2

你如何解释类​​层次结构。

我认为我的谷歌能力已经下降,因为当我搜索“类层次结构”作为术语时,我得到了一些关于类如何组织以及它们之间的继承关系的示例。这都是关于类层次结构的吗?您如何向 C 开发人员解释类层次结构?

类层次结构和对象层次结构之间还有什么区别?

实际上,我应该在周六向我的办公室同事做一次演讲,并遇到很多理论话题:(

任何帮助,将不胜感激。

非常感谢

4

1 回答 1

5

我会试着用几行来回答。

层次结构可能是指由类和它们之间的继承链接组成的结构。例如,您可能拥有class Car继承自 的class Vehicle,依此类推。这构成了一个类层次结构。

现在,当你创建一个Car使用new操作符的实例时,你获得了一个Car对象;不涉及层次结构。也就是说,没有像两个类那样的“通过继承链接在一起的两个对象”。我们可以说,在实例化时,类层次结构“变得扁平化”。

因此,短语对象层次结构通常是指整体/部分结构。您可能有另一个类,可能名为Wheel,加上一个引用 from Carto Wheel,这样汽车最多可以包含四个轮子(想象一下汽车对象中的一组轮子,或者如果您愿意,可以使用任何其他类型的容器)。这种安排构成了运行时对象的图形(而不是层次结构),其中整体/部分(有时称为“聚合”或“组合”)关系是主要链接。

总而言之:类层次结构和对象层次结构完全不同且不相关。

我希望这有帮助。

于 2011-01-14T19:24:58.907 回答