【发布时间】:2010-10-13 06:01:00
【问题描述】:
我了解链表的定义,但如何表示它并将其与一个常见的概念或项目相关联?
例如,OOP 中的组合(编辑:最初说“继承”)可以与汽车有关。现实生活中的所有(大多数)汽车本质上都是一样的。汽车有一个引擎,你可以启动()它,你可以让汽车去(),停止()等等。汽车通常具有最大载客量,但在公共汽车和跑车之间会有所不同,这两种汽车都是汽车。
有没有一些真实的、直观的简单的 ole' 单链表示例,就像我们在继承中所拥有的一样?典型的教科书链接列表示例显示了一个带有整数的节点和指向下一个的指针,它似乎并不是很有用。
感谢您的意见。
【问题讨论】:
-
您将继承与组合混淆了。您自己说过:汽车 has_an 引擎,而不是 is_an 引擎。
-
我并不困惑。引擎将在汽车类中声明并在巴士或跑车类中继承。此外,这篇文章不是关于继承的。
-
如果您不感到困惑,那么您的文字就是。您提到了组合的教科书示例,而不是继承。稍后添加属性继承的示例。不过,我明白这个问题是关于什么的,而且很有趣。这就是我不反对它的原因。
-
这个例子意味着汽车接口有一个getEngine()方法和一个start()方法。这是一个接口/继承的例子。
-
您是否要求进行类比,类似于普通(但我认为有缺陷)汽车 继承?还是使用链表的编程问题?
标签: collections linked-list car-analogy