我已经读过“如果有另一个同名的变量在范围内更接近,则一个变量将被隐藏”。我以构造函数为例找到了这个 Point 类:
public class Point {
public int x = 0;
public int y = 0;
public Point(int x, int y) {
x = x;
y = y;
}
}
然后我在下面的 CreateObjectDemo 类中创建了一个 Point 类的对象,并打印了变量 x 的值。
public class CreateObjectDemo {
public static void main(String[] args) {
Point originOne = new Point(23, 94);
System.out.println(originOne.x);
}
}
运行编译器后,它打印 0。但是为什么它不打印 23?我认为构造函数中的"x = x"会像"23 = 23"。我误解了阴影变量的定义吗?