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());
}
}
我以为会输出sub, 但实际输出了super. 我一直以为this指代的是方法的调用者, getName()是sub调用的, 所以其中this的应该是sub, 那么sub.name应该是sub; 但是这很明显错了
元芳怎么了
随时随地看视频慕课网APP
相关分类