【发布时间】:2021-08-25 07:11:56
【问题描述】:
在下面的代码中,'z' 是 ComplexNumber 类中的私有变量,所以当我在类解决方案的主函数中使用'c2.Z' 访问它时,会出现一个错误,这绝对没问题,因为 z 是私有变量并且只能可以在 ComplexNumbers 类中访问,但在复数类的 sum() 函数中,当我通过执行“C2.Z”访问复数类的对象 C2 的 z 时,我没有收到任何错误。为什么 ?。当我在 sum 函数中执行 C2.Z 时,我不应该得到错误吗,因为 z 是私有变量,我正在使用对象 C2 访问它。
public class OOPS1
{
public static void main(String args[])
{
ComplexNumbers c1 = new ComplexNumbers(2);
ComplexNumbers c2 = new ComplexNumbers(20);
int sum = c1.sum(c2);
print(c2.z);
System.out.println(sum);
}
}
class ComplexNumbers
{
private int z;
ComplexNumbers(int value)
{
this.z = value;
}
int sum(ComplexNumbers C2)
{
z = z + C2.z;
return z;
}
}
【问题讨论】:
-
private变量和方法始终可以在它们所在的类中访问,无论实例如何 -
感谢您的帮助