我很困惑,因为我认为这指的是调用该方法的当前对象。
那么为什么在调用继承方法时我的对象中的实例变量 x 没有改变呢?超类:
public class SuperBoss
{
int x = 50;
public void changeX()
{
this.x = 20;
}
}
子类:
public class Boss extends SuperBoss
{
int x = 10;
public static void main(String[] args)
{
Boss b = new Boss();
b.changeX();
System.out.println(b.x); //prints 10
}
}
为什么它打印 10 而不是 20?