这是两个班
class FirstClass {
int x;
public FirstClass(int n){
x=n;
}
int getx(){
return x;
}
}
class SecondClass extends FirstClass {
int x;
public SecondClass(int n){
super(n*2);
x=n;
}
int getx(){
return x;
}
}
但是,如果我执行类似FirstClass obj = new SecondClass(5)
的操作,则obj.x为10,而obj.getx()返回5。
我要么期望getx()为5且x为5,或者期望getx()为10且x为10。为什么代码如此工作?