extends继承或者implements实现,是多态性的前提。
多态的格式和使用:
代码当中体现多态性,其实就是一句话,父类引用指向子类对象。
格式:父类名称 对象名=new 子类名称();
左侧父类的引用指向了右侧子类的对象,把子类当做父类来进行看待,
访问成员变量的两种方式:(只有方法才能覆盖重写,成员变量不能覆盖重写)。
1直接通过对象名称访问成员变量,看等号左边是谁,优先使用谁,没有则向上找;
2间接通过成员方法访问成员变量;看该方法属于谁,优先使用谁,没有则向上找;
子类没有覆盖重写就是父,子类如果覆盖重写,就是子类
或者:接口名称 对象名=new 实现类名称();
在多态的代码当中,成员方法的访问规则是: 看new的是谁,就优先用谁,没有则向上找;
注意;编译看左边,运行看右边;(多态的体现) 成员变量不在此列
成员变量:编译看左边,运行看左边
原文:https://www.cnblogs.com/Damocless/p/11867405.html