阶级继承理论洞察力

时间:2014-05-07 23:39:19

标签: class oop inheritance

最近我被问到以下问题,并且我不确定我的回答有多好,所以我想知道人们对这个问题的看法:

如果你正在处理一类苹果和一类蒲式耳。什么类会继承另一类,为什么?

让我知道你的想法,谢谢。

2 个答案:

答案 0 :(得分:1)

都不是。苹果不是蒲式耳,蒲式耳不是苹果。 Bushels 包含 apple,所以这种关系是包容,而不是继承。

答案 1 :(得分:1)

我不认为任何一个班级应该来自另一个班级。苹果和蒲式耳篮子是根本不同的东西。蒲式耳可以包含苹果,但是没有 IS-A 关系可以建议继承。

可能Apple类应该来自更抽象的Fruit类,而Bushel可能来自更抽象的Container类。然后,您可以指定Container包含零个或多个Fruit的实例。