【发布时间】:2016-03-23 23:04:55
【问题描述】:
我有这个代码:
class A {
protected int x;
public int getX() {
return x;
}
}
class B extends A {
private int answer;
public void someMethod() {
answer = x;
answer = this.x;
answer = this.getX();
answer = super.x;
answer = super.getX();
}
}
someMethod 中的哪些赋值语句是有效的?
我认为这两条“超级”行是正确的?
【问题讨论】:
-
任何考试的范围都是为了测试您对该主题的了解。在 SO 上提出“紧急”或“最后一刻”的问题会破坏该范围。另外,出于多种原因,无论如何,您的问题都不适合 SO。见here。
-
我刚刚做了,但我想我搞砸了。具有上述选项的每个方法都只返回 0。它们确实可以编译,但我猜这是主要的事情?
-
我知道这是一个令人震惊的科科我道歉,只是在这里抓着稻草!
-
总是0?这很奇怪,因为您从未将值设置为
x,所以绝对不可能让x具有其默认值... -
觉得我刚刚做的测试课完全搞砸了!
标签: java inheritance