【发布时间】:2011-10-23 12:50:04
【问题描述】:
好的,我被大学布置了一个作业,但我无法理解这个问题是怎么回事,我是班上唯一能做到这一点的人,而且我的讲师没有回过头来我。
基本上它是关于继承和多态性,我们使用父类,然后从父类创建子类;
private HashMap<String,Aircraft> allAircraft = new HashMap<String,Aircraft>();
Aircraft plane = new Plane(reg,pass,cargo);
所以父母不能使用孩子的方法,我理解这背后的大部分概念并设法理解它。对于其中一种方法,我们特别被要求使用强制转换(尽管我被无数次告知如果我必须使用它,那么我应该重组),但对于另一种方法,我们被要求调用一个只有对于其中两个子类,强制转换在这里不起作用,因为我不知道 HashMap 中的子类是什么。
所以我的问题是;在使用多态性时,我如何偏爱两个子类方法而不是父类?
我的脑子真的要爆炸了。
【问题讨论】:
标签: java inheritance casting