十五 设计模式之组合模式

原创 2011年01月25日 09:15:00

  定义     将对象组合成树形结构以表示“部分 - 整体”的层次结构,使得用户对单个对象和组合对象的使用具有一致性  


  类图



通用代码

 

优点

1.       高层模块调用简单   高层模块不必关心自己处理的是单个对象还是整个组合结构

2.       节点自由增加

缺点

场景类中,树枝和树叶使用时都需用起实现类,与依赖倒置原则冲突,没有面向接口编程

使用场景

1.       维护和展示部分 - 整体关系的场景,如树形菜单,文件和文件夹管理

2.       从一个整体中能够独立出部分模块或功能的场景

只要是树形结构就可以考虑使用组合模式





相关文章推荐

设计模式—组合模式(十五)

软件领域中的设计模式的重要性不言而喻。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态。虽然知道这些特性的定义但是并没有做到真正的理解,这样特性有什么作用?用于什么场合中等等问题,带着疑问...
  • AlphaGQ
  • AlphaGQ
  • 2017年06月09日 23:08
  • 75

设计模式C++学习笔记之十五(Composite组合模式)

15.1.解释 概念:将对象组合成树形结构以表示“部分-整体”的层次结构。Composite使得用户对单个对象和组合的使用具有一致性。 main(),客户 CCorpNode,抽象基类,实现基本...

设计模式C++之十五(Composite组合模式)

15.1.解释 概念:将对象组合成树形结构以表示“部分-整体”的层次结构。Composite使得用户对单个对象和组合的使用具有一致性。 main(),客户 CCorpNode,抽象基类,实现基本...

设计模式C++学习笔记之十五(Composite组合模式)

15.1.解释 概念:将对象组合成树形结构以表示“部分-整体”的层次结构。Composite使得用户对单个对象和组合的使用具有一致性。 main(),客户 CCorpNode,抽象基类,实现基本...

十五、组合模式——设计模式学习笔记

组合模式,将对象组合成树形结构以表示‘部分-整体’的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。...

设计模式之十五:组合模式(Composite)

组合模式: 将对象组合成树形结构来表示部分与整体的关系。组合模式让客户能将单个对象和组合对象统一对待。 Compose objects into tree structures to repres...

无废话C#设计模式之十五:Strategy

无废话C#设计模式之十五:Strategy 意图        定义一系列的算法,把它们一个一个封装起来,并且使它们可相互替换。本模式使得算法可以独立于它的客户而变化。 场景        在开发程序...
  • rise51
  • rise51
  • 2011年01月18日 16:05
  • 202

设计模式讲解与代码实践(十五)——命令

本文讲解了命令(Command)设计模式的使用目的、基本形态及各参与者,并结合示例代码,讲解了该设计模式在具体业务场景下的使用。...

设计模式-组合实体

  • 2016年11月30日 21:33
  • 40KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:十五 设计模式之组合模式
举报原因:
原因补充:

(最多只允许输入30个字)