public class Parent {
public String a;
public String b;
public Parent getA(){
System.out.println("PPPPPPPPP");
return this;
}
public void Test(){
System.out.println(getA().a);
System.out.println(getA().b);
}
}
public class Sub extends Parent{
public String a = "sa";
public String b = "sb";
public void aa(){
super.Test();
}
@Override
public Sub getA(){
System.out.println("SSSSSSSSSSSSSS");
return this;
}
public static void main(String[] args) {
Sub s = new Sub();
s.aa();
}
}
打印结果 :
SSSSSSSSSSSSSS
null
SSSSSSSSSSSSSS
null
为啥打印的是两个 null 呢?
getA 调用的是子类,那么我想getA().a也应该调用的是子类的属性才对啊?