如何解释类层次结构。
我认为我的谷歌权力已经下降,因为当我搜索“类层次结构”作为术语时,我得到了一些关于类如何组织以及它们之间的继承关系的例子。是关于类层次结构的吗?你如何向C开发人员解释类层次结构?
还有类层次结构和对象层次结构之间的区别吗?
实际上,我应该在星期六向我的办公室同事做一个演讲,并且会遇到如此多的理论主题:(
任何帮助都将不胜感激。
非常感谢
答案 0 :(得分:6)
我会试着回答几句话。
类层次结构可能是指由类和它们之间的继承链接组成的结构。例如,您可能class Car
继承自class Vehicle
,依此类推。这构成了一个类层次结构。
现在,当您使用Car
运算符创建new
的实例时,您将获得一个Car
对象;没有涉及层次结构。也就是说,两个类没有“通过插入连接在一起的两个对象”。我们可以说,在实例化时,类层次结构“变得平坦”。
因此,短语对象层次结构通常指整个/部分结构。您可能有另一个类,可能名为Wheel
,加上Car
到Wheel
的引用,这样汽车最多可以包含四个轮子(想象一下汽车对象中的一系列轮子,或者任何其他类型的容器,如果你愿意)。这种安排构成了对象的运行时图形(而不是层次结构),其中整体/部分(有时称为“聚合”或“组合”)关系是主要链接。
总结:类层次结构和对象层次结构完全不同且不相关。
我希望这会有所帮助。