【设计模式】结构型模式之组合Composite
来源:互联网 发布:mac电脑打字特别卡 编辑:程序博客网 时间:2024/05/18 01:47
组合Composite是一种对象结构型设计模式,意在将对象组合成树形结构以表示部分与整体的层次结构,使得用户对单个对象和组合对象的使用具有一致性。当我们想表示对象的部分与整体层次结构时,或者希望用户忽略组合对象与单个对象的不同,能够统一地使用组合结构中的所有对象时,我们可以使用Composite模式。
Composite模式的结构如下类图所示:
上图中,Component为组合中的对象声明接口,在适当的情况下,实现所有类共有接口的缺省行为,声明一个接口用于访问和管理Component的子组件,也可以选择性地在递归结构中定义一个接口,用于访问一个父部件,并在合适的情况下实现它;Leaf在组合中表示叶节点对象,叶节点没有子节点;Composite定义有子部件的那些部件的行为,存储子部件,在Component中实现与子部件有关的操作;Client通过Component接口操纵组合部件的对象。用户使用Component类接口与组合结构中的对象进行交互,如果接收者是一个叶节点,则直接处理请求,如果接收者是Composite,它通常将请求发送给它的子部件,在转发请求之前或之后可能执行一些辅助操作。
1 0
- 设计模式(结构型)之组合模式(Composite Pattern)
- 【设计模式】结构型模式之组合Composite
- 结构型设计模式之组合模式(Composite Pattern)
- 结构型设计模式---组合模式(Composite)
- [设计模式-结构型]组合(Composite )
- 设计模式-结构型-composite 组合
- 结构型模式之组合COMPOSITE
- 结构模式之Composite(组合)
- 结构模式之Composite(组合)
- (C++设计模式) ------Composite 组合模式-- 结构型模式
- 设计模式-结构型模式:组合模式 Composite
- 设计模式之Composite(组合)
- 设计模式之Composite(组合)
- 设计模式之Composite(组合)
- 设计模式之Composite(组合)
- 设计模式之Composite(组合)
- 设计模式之Composite(组合)
- 设计模式之Composite(组合)
- 记录自己的错误,16.8.7
- Docker1.12 + Swarm 构建动态微服务应用
- PHP基础排序算法(五)希尔排序
- hdu 5636 Shortest Path(Floyd最短路)
- 164.Examine the command that is used to create a table: SQL> CREATE TABLE orders( oid NUMBER(6) PRI
- 【设计模式】结构型模式之组合Composite
- MySql在windows上的安装
- POJ Evil Straw Warts Live (贪心)
- 第一章简洁代码,二章有意义的命名
- HashMap与Hashtable区别
- mysql启动报错:Another MySQL daemon already running with the same unix socket.
- 40:Spark Streaming中KafkaReceiver内幕实现彻底解密
- Java的内存回收机制
- Java中JDK和JRE的区别是什么?它们的作用分别是什么?