设置者的难度

时间:2012-05-03 03:36:34

标签: java

我有一个名为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'关键字?

2 个答案:

答案 0 :(得分:3)

getXpos()方法应如下所示:

public int getXpos() {    
    return x;
}

答案 1 :(得分:0)

xPos不能是静态的。如果它是静态的,则相同的数字将出现两次。 (原始形状)