1
我有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行所示...爲什麼它恢復到原始值?