我有一个名为Shape的类,它有两个子类Shape1和Shape2。在Shape类中,我有变量Xpos和Xpos,方法是:
public int getXpos(){
return Xpos;
}
public void setXpos(int x){
this.x = x;
}
// Same thing for y
现在让我们在类Shape x = 10
中说。现在当我继承它时:
public class Shape1{
Shape1(){
xPos = 100;
// ...
}
}
和
public class Shape2{
Shape2(){
xPos = 200;
// ...
}
}
但是当我在另一个程序中执行Shape1.getX()时,我得到10个结果。谁能告诉我为什么我没有100?问题是'this'关键字?
答案 0 :(得分:3)
getXpos()
方法应如下所示:
public int getXpos() {
return x;
}
答案 1 :(得分:0)
xPos不能是静态的。如果它是静态的,则相同的数字将出现两次。 (原始形状)