组合模式:见名知意,将不同对象组合起来为一个整体使用,组合的好的整体可以继续组合,作为一个新的整体使用。 动机(Motivate): 组合模式有时候又叫做部分-整体模式,它使我们树型结构的问题中,模糊了简单元素和复杂元素的概念,客户程序可以向处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素 ...
分类:
其他好文 时间:
2020-01-17 09:53:51
阅读次数:
67
第12章:组合模式 一、看一个学校院系展示需求 编写程序展示一个学校院系结构:需求是这样,要在一个页面中展示出学校的院系组成,一个学校有多个学院, 一个学院有多个系。如图: 清华大学 计算机学院 计算机科学与技术 软件工程 网络工程 信息工程学院 通信工程 信息工程 二、传统方案解决学校院系展示(类 ...
分类:
其他好文 时间:
2020-01-10 23:55:15
阅读次数:
131
GOF23设计模式 GPF即group of four,是它们设计了GOF23种设计模式。 创建型模式 单例模式、工厂模式、抽象工厂模式、建造者模式、原型模式 结构型模式 适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式 行为型模式 模板方法模式、命令模式、迭代器模式、观察者模 ...
分类:
其他好文 时间:
2020-01-08 21:14:21
阅读次数:
84
最近比较忙,有段时间没有更新设计模式的进度了。今天继续学习组合设计模式。 组合模式的例子我们继续延续上篇《HeadFirst设计模式——迭代器模式》的菜单例子,首先声明下迭代器和组合模式没有什么关系,他们是两个不同模式。只是我们在这个菜单例子的组合模式内部会用到迭代器。迭代器模式中说到两个餐馆合并然后使用迭代器进行统一处理菜单的打印,但是现在有一个新的需求是原来大菜单中我们希望加入子菜单,比
分类:
其他好文 时间:
2020-01-06 16:28:50
阅读次数:
87
最近比较忙,有段时间没有更新设计模式的进度了。今天继续学习组合设计模式。 组合模式的例子我们继续延续上篇《HeadFirst设计模式——迭代器模式》的菜单例子,首先声明下迭代器和组合模式没有什么关系,他们是两个不同模式。只是我们在这个菜单例子的组合模式内部会用到迭代器。迭代器模式中说到两个餐馆合并然后使用迭代器进行统一处理菜单的打印,但是现在有一个新的需求是原来大菜单中我们希望加入子菜单,比
分类:
其他好文 时间:
2020-01-06 16:13:00
阅读次数:
81
目录 1.装饰模式 2.外观模式 3.享元模式 4.组合模式 4.1透明方式 4.2安全方式 一、装饰模式(Decorator) 可以动态的为对象添加新的功能,是一种用于代替继承的技术,无须通过继承添加子类就能扩展对象的新功能。使用对象的关联关系代替继承关系。同时避免类型体系的快速膨胀。 核心角色: ...
分类:
其他好文 时间:
2020-01-05 14:00:21
阅读次数:
94
总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、 ...
分类:
编程语言 时间:
2019-12-23 16:31:33
阅读次数:
101
组合模式(Composite): 将对象组合成树形结构以表示“部分 整体”的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。 基本代码 透明方式与安全方式 透明方式,也就是说在Component中声明所有用来管理子对象的方法,其中包括Add、Remove等,这样实现Component ...
分类:
其他好文 时间:
2019-12-13 16:43:45
阅读次数:
123
23中设计模式目录如下: 工厂模式抽象工厂模式单例模式建造者模式原型模式适配器模式桥接模式过滤器模式组合模式装饰器模式外观模式享元模式代理模式责任链模式命令模式解释器模式迭代器模式中介者模式备忘录模式观察者模式状态模式空对象模式策略模式模板模式访问者模式 1.哪些JAVA不能用?3种 内存相关的:克 ...
分类:
编程语言 时间:
2019-12-08 01:37:00
阅读次数:
132