面向对象分析与设计、设计模式

Object Oriented Analysis and Design, design pattern

我正在研究复合设计模式。我只是想问一下,复合模式中的叶子可以从组件以外的任何其他 class 继承吗?

Composite模式中,Composite和一个Leaf实现相同的接口Component。这就是模式的重点。

目的是您可以编写代码来处理 Leaf 或由多个 Leaf(或多个子 Composite 组成)的 Composite同理

当您使用支持接口的面向对象语言(或能够模拟它们,例如抽象的多重继承 classes)时,这取决于 class es LeafComposite 它们如何实现 Component 接口。他们可以通过继承已经实现 Component 的 class 来实现,或者他们可以自己实现它。

是的,有可能,请参考编码头盔This,它是实现一些设计模式和组合的非常好的示例,是让叶子类封装和隔离行为的胶水来自其他 类。
我希望这个示例有助于理解我的想法。
此致!