Java 中在父类创建了一个对象,为什么可以引用子类的方法?对象引用的范围是怎么回事。

如题所述

子类继承父类,因此子类拥有父类的属性和方法,如果子类重写了父类的方法,那么父类调用该方法的时候就会先检查子类是否重写了该方法,重写了就调用重写后的方法,没重写就用父类自己的方法。楼上说的List list = new ArrayList();这个其实是父类List引用了子类的对象,因此父类可以应用子类的方法,这叫做向上转型。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-02-28
你是说List list=new ArrayList()这种?
这个可不是在父类创建了一个对象,为什么可以引用子类的方法。
其实这个就是创建了个子类的对象。本回答被网友采纳
第2个回答  2013-02-28
这是java多态的一种表现形式,子类重写了父类的方法,子类的方法被父类的引用调用,即父类型的引用指向子类的对象。
第3个回答  2013-02-28
三言两语讲不清楚,你如果想快速理解这部分,唯一的办法是看书。《head first java》算是比较简单而且靠谱的入门书了,多态的基础还算讲得通俗易懂。如果你看了任然没有帮助,可以更进一步看看《thinking in java》
相似回答