如果我没记错,即使我们将大字符串或字节数组作为参数传递给方法,它只会将指针传递给数据堆而不是完整数据。所以它不应该降低任何性能,或者它不应该不必要地堆积内存。只是想确认我对以上陈述的理解是否正确?
我知道最好将字符串或字节数组保存为类中的私有变量,并在所需的每个方法中访问它,从而从方法调用中消除一个额外的参数。
感谢
答案 0 :(得分:3)
如果我没记错,即使我们将大字符串或字节数组作为参数传递给方法,它只会将指针传递给数据堆而不是完整数据。
是的,当您传递任何引用类型参数时,只会按值传递引用。请注意,这与“按引用传递”不同,后者适用于引用类型和值类型的参数。
有关详细信息,请参阅reference types and value types和parameter passing上的文章。
我知道最好将字符串或字节数组保存为类中的私有变量,并在所需的每个方法中访问它,从而从方法调用中消除一个额外的参数。
这完全取决于背景。它在逻辑上是不是阶级状态的一部分吗?