題目描述
class Super{
private String name = "Super";
public String getName() {
return this.name;
}
}
public class Sub extends Super{
private String name = "Sub";
public static void main(String[] args) {
Sub sub = new Sub();
//Super
System.out.println(sub.getName());
}
}
你期待的結(jié)果是什么?實(shí)際看到的錯(cuò)誤信息又是什么?
我以為會(huì)輸出sub, 但實(shí)際輸出了super. 我一直以為this指代的是方法的調(diào)用者, getName()是sub調(diào)用的, 所以其中this的應(yīng)該是sub, 那么sub.name應(yīng)該是sub; 但是這很明顯錯(cuò)了
添加回答
舉報(bào)
0/150
提交
取消