------解决方案-------------------- new TestExtend();构造子类对象时,需要先构造父类对象,父类构造方法中调用了被子类重写过的amethod();方法,所以在创建父类对象时会直接调用子类覆写过的amethod();方法。 b.amethod();直接调用子类覆写过的amethod();方法。多态的特性而已
------解决方案-------------------- 方法的多态。
------解决方案-------------------- public static void main(String[] args) { Base b = new TestExtend(); //调用Base的构造方法,构造方法里面调用method()方法,但method()方法被子类重写,打印driv.. b.amethod(); //再次调用重写后的method(),打印driv... }