`
jackeysui
  • 浏览: 8916 次
  • 性别: Icon_minigender_1
  • 来自: 大连
最近访客 更多访客>>
社区版块
存档分类
最新评论

《JAVA与模式》读后感2-合成模式

阅读更多

今天学习了合成模式(composite)。

定义:将对象组织到树结构中,可用于描述部分与整体的关系。使客户端可以将树叶元素与树枝元素同等对待。

文件系统是一个例子,文件是树叶,文件夹是树枝。算术运算是一个例子,普通的加减乘除就是树叶,普通的加减乘除的组合就是树枝。个人认为合成模式不如叫做树模式。

 

合成模式由三部分构成,抽象构件、树叶构件、树枝构件。

 

实现方式有安全方式和透明方式之分。区别就是抽象构件中是否有管理子对象的接口方法。

 

使用合成模式的情况:(1)需要描述对象的部分与整体的关系,并且类似于树叶与树枝的关系。(2)客户端要忽略树叶和树枝的区别。

 

优点:(1)容易增加新种类的构件。(2)使客户端容易设计,因为可以忽略区别。

缺点:(1)控制树枝的类型不容易。(3)使用继承方式增加行为比较难。

 

与其他模式的关系研究待补。

分享到:
评论

相关推荐

    JAVA与模式

    合成模式将对象组织到树结构中,可以用来描述整体与部分的关系。合成模式可以使客户端将单纯元素与复合元素同等看待。 合成模式  合成模式把部分和整体的关系用树结构表示出来。合成模式使得客户端把一个个单独的...

    计算机后端-Java-图解java设计模式022 合成复用.avi

    计算机后端-Java-图解java设计模式022 合成复用.avi

    [Java设计模式(第2版)(Design.Patterns.in.Java).John.Metsker

    《java设计模式(第2版)》通过一个完整的java项目对经典著作design patterns一书介绍的23种设计模式进行了深入分析与讲解,实践性强,却又不失对模式本质的探讨。本书创造性地将这些模式分为5大类别,以充分展现各个...

    设计模式之合成模式Java实现和类设计图

    设计模式之合成模式的Java实现版本,包括UML类设计图,包含了两种实现,安全式和透明式

    Java与模式(清晰书签版) 设计模式 part3

    第2章 统一建模语言UML简介 第3章 软件的可维护性和可复用性 第4章 开闭原则 第5章 专题 JAVA语言的接口 第6章 专题 抽象类 第7章 里氏代换原则 第8章 依赖倒转原则 第9章 接口隔离原则 第10章 合成、聚合复用原则 ...

    Java与模式 学习

    Java与模式:迭代子(Iterator)模式、合成(Composite)模式、抽象工厂模式等

    Java 设计模式

    java的设计模式大体上分为三大类: 创建型模式(5种):工厂方法模式,抽象工厂模式,单例模式,建造者模式,原型模式。 结构型模式(7种):适配器模式,装饰器模式,代理模式,外观模式,桥接模式,组合模式,享元...

    浅析java常用的设计模式(doc-23页).doc

    8、合成模式:合成模式将对象组织到树结构中,可以用来描述整体与部分的关系。 合成模式就是一个处理对象的树结构的模式。合成模式把部分与整体的关系用树结构表 示出来。合成模式使得客户端把一个个单独的成分对象...

    Java与模式.清晰.rar

    Java与模式.清晰.rar 第一部分 第1章 模式的简史和形而上学 第2章 统一建模语言UML简介 第二部分 第3章 软件的可维护性与可复用性 第4章 “开-闭”原则 第5章 专题:Java语言的接口 第6章 专题:抽象类 第7章 里氏...

    java与模式

    1:模式的简史和形而上学;2:统一建模语言UML简介;3:软件的可维护性与可复用性;4:开-闭 原则;5:java语言接口;6:抽象类;...24:合成模式;25:装饰模式;26:设计模式在JAVA I/O设计原则;28:代理模式;....

    design-pattern-java.pdf

    命令模式-Command Pattern 请求发送者与接收者解耦——命令模式(一) 请求发送者与接收者解耦——命令模式(二) 请求发送者与接收者解耦——命令模式(三) 请求发送者与接收者解耦——命令模式(四) 请求发送者...

    java 设计模式与Jar库

    java 设计模式与Jar库 里氏代换原则LSP 依赖倒转原则DIP 接口隔离原则ISP 合成/聚合复用原则CARP

    《Java设计模式(第2版)》

    3、行为型模式(11种):策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。 二、设计模式遵循的原则有6个: 1、开闭原则...

    尚硅谷设计模式源码笔记课件.zip

    2) 设计模式包含了大量的编程思想,讲授和真正掌握并不容易,网上的设计模式课程不少,大多讲解的比较晦涩,没有真实的应用场景和框架源码支撑,学习后,只知其形,不知其神。就会造成这样结果: 知道各种设计模式,...

    java和设计模式ppt教程

    java和设计模式ppt包含工厂模式、建造模式、原始模型模式、单例模式、结构模式、适配器、桥梁模式、合成模式、装饰模式、门面模式、享元模式、代理模式、行为模式、解释器模式、迭代子模式、调停者模式、备忘录模式...

    学习JAVA-23种设计模式

    学习JAVA-23种设计模式。1.设计模式的分类2.设计模式的六大原则3.依赖倒转原则4.接口隔离原则5.迪米特法则6.合成复用原则...

    java_模式part2.rar

    Java模式 Java语言的接口 抽象类 里氏代换原则 依赖倒转原则 接口隔离原则 合成/聚合复用原则 迪米特法则 简单的工厂 工厂的方法 抽象工程 单例(singleton) 原始模型 适配器 装饰 代理 门面模式 不变模式 策略模式 ...

    Java与模式(含示例代码)

    《Java 与模式》作者阎宏博士 电子工业出版社出版 11.3 迪米特法则与设计模式.............126 11.4 广义的迪米特法则.....................128 11.5 广义迪米特法则在类的设计上的体 现....129 11.6 广义迪米特法则...

    java源码设计模式-javascript-design-patterns-source-code:用JavaScript语言合成设计模式的源

    Javajavascript-design-patterns-源代码 用JavaScript语言合成设计模式的源代码

    《设计模式实训教程》【PPT+类图与代码+样章】

    6.2.6访问者模式、组合模式与迭代器模式联用 6.3综合实例实训 6.3.1多人联机射击游戏 6.3.2数据库同步系统 6.4实训练习 附录A参考答案 A.1第1章实训练习参考答案 A.2第2章实训练习参考答案 A.3第3章实训练习...

Global site tag (gtag.js) - Google Analytics