定义:
组合多个对象形成树形结构以表示整体-部分的结构层次。组合模式对单个对象和组合对象的使用具有一致性。
来源:
树状结构图。
对树进行面向对象的分析,树Tree由一种对象构成:节点Node。节点可以包含子节点。
优点:
组合模式只是一种实现树形结果的方式。(还可以有别的方式实现)组合模式最大的优点就是:父节点和子节点具有相同的使用方式(继承自同一个类)。这样可以任意灵活的增加新的子节点。
.NET FCL 中的Composite模式:Control类
一个Control可以包含其他的多个Control。比如GroupBox可以包含Button.
GroupBox和Button类都继承自Control
Control有一个属性Controls,它是ControlCollection 控件集合类。
ControlCollection 类提供了增加,移除,查找Control的方法。