【发布时间】:2016-09-02 18:23:05
【问题描述】:
我有以下类图。只是寻找一些关于我如何处理这个考试问题的指导,因为我不确定我是否正确。我没有解决方案,希望有经验的人能给出意见。
-
任务 1: 添加一个名为
MonsterEater的子类。此类的对象类似于PieEaters,但此外MonsterEater有一个名为numPieEatersEaten的整数类型的属性和一个方法eatPieEater,其签名的一个参数名为aGrid,其类型为Grid。由于
MonsterEater有很多与PieEater相同的行为,我决定让它继承自PieEater类,同时赋予它额外的行为(属性和方法) -
任务 2:添加一个名为
MagicPie的子类。此类的对象类似于Pies,但除此之外MagicPies有一个名为visible的布尔类型的属性,并且方法出现和消失都带有无参数签名并且什么都不返回我让
MagicPie继承自Pie。给它属性和方法。 -
任务 3:覆盖继承层次结构中所有具体类中的 display 方法。
为此,我只是将
display()方法添加到从基类GameElement继承的所有类中。我还被要求添加一个关联,以便
MonsterEaters可以吃MagicPies。(我创建的类派生自Pie)所以我已经完成了从MonsterEater到 @ 的eats关联987654346@ -
最终任务:列出
MonsterEater和MagicPie类的所有功能。您制作的 UML 图是否允许MonsterEaters吃掉Pies。解释你的答案。我不确定这个,
MonsterEater继承自PieEater可以吃馅饼的类,但我不确定这是否意味着MonsterEater可以。我也不完全确定我创建的继承层次结构是否正确。任何见解/指导将不胜感激。
【问题讨论】:
标签: class inheritance uml