gpt4 book ai didi

c# - OO设计,私有(private)方法之间传递参数还是访问成员变量?

转载 作者:太空狗 更新时间:2023-10-29 17:44:28 24 4
gpt4 key购买 nike

<分区>

假设我有以下类(class):

class MyClass
{
private int memberVar;

public MyClass(int passedInVar)
{
memberVar = passedInVar;
}
}

在构造函数中,你传入一个 int 并将其分配给一个私有(private)成员变量。

我的问题是,是在类的私有(private)方法之间传递 int 变量更好,还是不将 int 变量作为参数传递,而是让每个私有(private)方法直接访问私有(private) membervar?

即这是吗(示例 A):

class MyClass
{
private int memberVar;

public MyClass(int passedInVar)
{
memberVar = passedInVar;
}

public MyPublicMethod()
{
MyPrivateMethod(memberVar);
}

public MyPrivateMethod(int variable)
{
// Do something with passed in variable...
}
}

比这个更好(示例 B):

class MyClass
{
private int memberVar;

public MyClass(int passedInVar)
{
memberVar = passedInVar;
}

public MyPublicMethod()
{
MyPrivateMethod();
}

public MyPrivateMethod()
{
// Do something with memberVar...
}
}

我问的原因是我发现自己在两种风格之间切换。

我发现示例 A 的样式显示了代码的更多意图。您可以看到在私有(private)方法之间传递的内容,因此可以更清楚地了解该方法所影响的内容。

而示例 B 更简洁,因为 memberVar 没有在私有(private)方法之间传递。然而,代码感觉更“副作用”,因为该方法作用于哪些私有(private)成员变量并不总是很明显。

对于您认为最佳方法的意见,我将不胜感激。

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com