直接用代码来说明比较好,上干货:
class A {
String a = "父类";
public void Method(){
System.out.println(a);
}
}
class B extends A{
String a = "子类";
}
public class Test{
public static void main(String[] args) {
B b = new B();
b.Method();
}
}
结果:
父类
解释:
使用的是父类的变量,毕竟这个方法是父类的方法,虽然是子类调用的方法,但真正执行方法的估计是父类