JAVA设计模式之组合模式

  1. 组合模式:
    部分-整体模式,它使我们树形结构的问题中,模糊了简单元素和复杂元素的概念,客户程序可以像处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素的内部结构解耦。
  2. 意图:
    将对象组合成树形结构以表示部分-整体的单层结构,组合模式使得用户对单个对象和组合对象的使用具有一致性。
  3. 组成:
    • Component 抽象构件接口:
      为组合的对象声明接口。
      在某些情况下实现从此接口派生出的所有类共有的默认行为。
      定义一个接口可以访问及管理它的多个子部件。
    • Leaf 叶部件:
      在组合中表示叶节点对象,叶节点没有子节点。
      定义组合中接口对象的行为。
    • Composite 组合类:
      定义有子节点(子部件)的部件的行为。
      存储子节点(子部件)。
      在Component接口中实现与子部件相关的操作。
    • Client 客户端:
      通过Component接口控制组合部件的对象。
  4. 组合模式有两种实现方式:
    • 将管理子元素的方法定义在Composite类中。
    • 将管理子元素的方法定义在Component类中,( Leaf类需对这些管理方法空实现)。

Git Composite Code

posted @ 2017-04-11 14:10  涣涣虚心  阅读(154)  评论(0编辑  收藏  举报