例如:
Foo
{
private int _instanceData;
// Do this?
private void Bar1(int instanceData) { // some work using 'instanceData' }
// Or this?
private void Bar1( ) { // some work using '_instanceData' }
}
Run Code Online (Sandbox Code Playgroud)
如果一个方法已经获得了相关信息作为对象状态的一部分-所以明确-那么我认为这将是非常混乱,也是在把它作为参数传递给方法.
实例方法的大多数要点是将行为与对象的状态相关联.如果您传递方法所需的信息,那么最好将方法本身设置为静态,以明确表示您没有使用对象的现有状态.我可能只是把它作为第一个实例方法.
当您已经通过实例状态访问信息时,为什么要通过参数传递信息?