关于面向对象的三大特征之一的多态,犹记得初学java时的一句话:编译看父类,运行看子类。
多态的实现条件:继承、重写、向上转型
多态中,方法的调用:向上转型之后,调用的方法父类必须已有,子类没有重写,直接调父类,子类重写,调用子类;
当方法的入参中有继承关系时:该优先级为:this.method(O)、super.method(O)、this.method((super)O)、 super.method((super)O)。在编译通过的情况下
首先要根据调用子类的方法向上查找,然后向下调用, 和 优先级顺序相反。