多态中的成员访问特点
成员变量
编译看左边(父类),运行看左边(父类)
成员方法
编译看左边(父类),运行看右边(子类)。动态绑定
静态方法
编译看左边(父类),运行看左边(父类)。
(静态和类相关,算不上重写,所以,访问还是左边的)
只有非静态的成员方法,编译看左边,运行看右边
案例:- class Demo2_Polymorphic {
- public static void main(String[] args) {
- Father f = new Son(); //父类引用指向子类对象
- System.out.println(f.num); //相当于是Father.method()
- Son s = new Son();
- System.out.println(s.num);
- }
- }
- class Father {
- int num = 10;
- }
- class Son extends Father {
- int num = 20;
- }
复制代码
|
|