我有 2 节课:
public class Increase {
public int a=3;
public void add(){
a+=5;
System.out.println("f");
}
}
class SubIncrease extends Increase{
public int a=8;
public void add(){
a+=5;
System.out.println("b" + a);
}
}
但是当我跑步时
Increase f=new SubIncrease();
System.out.println(f.a);
f.add();
System.out.println(f.a);
我得到了这个输出:
3
b13
3
谁能帮我理解为什么会这样?a 属性的值在方法 add 中发生了更改,如第二个 outpuy 行所示……为什么它会恢复到原来的值?