跳转至

设计模式-组合模式

定义

将对象组合成树形结构以表示“部分-整体”的层次结构,组合模式使客户端对单个对象和组合对象保持一致的处理方式。

适用场景

  • 希望客户端可以忽略组合对象与单个对象的差异时。
  • 处理一个树形结构时。

UML

总结

  • 优点

  • 清楚的定义分层次的复杂对象,表示对象的全部或部分层次。

  • 让客户端忽略层次的差异,方便对整个层次结构进行控制。
  • 简化客户端代码。
  • 符合开闭原则

  • 缺点

  • 限制类型时会较为复杂。

  • 使设计变的更加抽象。