2017年10月21日
摘要: 建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。 四个要素 产品类:一般是一个较为复杂的对象,也就是说创建对象的过程比较复杂,一般会有比较多的代码量。在本类图中,产品类是一个具体的类,而非抽象类。实际编程中,产品类可以是由一个抽象类与它的不同实现组成,也可 阅读全文
posted @ 2017-10-21 23:01 啊哈咧 阅读(111) 评论(0) 推荐(0) 编辑
摘要: Component:抽象组件角色,定义一组抽象的接口,规定这个被装饰组件都有哪些功能 ConcreteComponent:实现这个抽象组件的所有功能 Decorator:装饰器角色,它持有一个Component对象实例的引用,定义一个与抽象组件一致的接口 ConcreteDecorate:具体装饰器 阅读全文
posted @ 2017-10-21 21:32 啊哈咧 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 原型模式(Prototype Pattern)是用于创建重复的对象,同时又能保证性能。 原型模式主要用于对象的复制,它的核心是就是类图中的原型类Prototype。Prototype类需要具备以下两个条件: 实现Cloneable接口。在java语言有一个Cloneable接口,它的作用只有一个,就 阅读全文
posted @ 2017-10-21 21:31 啊哈咧 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 门面设计模式主要用在在一个大的系统中有多个子系统时,多个子系统会设计一个门面,把别的系统感兴趣的数据封闭起来,通过这个门面来进行访问 Facade SubSystemA SubSystemB Client 阅读全文
posted @ 2017-10-21 20:19 啊哈咧 阅读(145) 评论(0) 推荐(0) 编辑
摘要: Abstract(抽象模板):定义了完整的框架,方法的调用顺序通常已经确定,但是还会定义一些抽象的方法给子类实现 Concrete(具体模板实现类):实现抽象模板中定义的抽象方法,实现具体的功能,组成一个完整逻辑 AbstractTemplate ConcreteTemplateA Concrete 阅读全文
posted @ 2017-10-21 12:39 啊哈咧 阅读(186) 评论(0) 推荐(0) 编辑
摘要: Context:使用不同的策略的环境,它可以根据自身的条件选择不同的策略实现类来完成所要的操作。它持有一个策略实例的引用,创建具有策略对象的方法也可以由它完成 Strategy:抽象策略,定义每个策略都要实现的策略方法 Strategy ConcreteStrateA ConcreteStrateB 阅读全文
posted @ 2017-10-21 12:29 啊哈咧 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 观察者必须在主题中注册,然后主题才能将通知观察者 观察者模式通常包括下面几个角色: 1、Subject:抽象主题,它负责管理所有观察者的引用,定时定义主要的事件操作 2、ConcreteSubject 具体主题:它实现了抽象主题定义的所有接口,当自己发生变化时会通知所有观察者 3、Observer 阅读全文
posted @ 2017-10-21 12:18 啊哈咧 阅读(126) 评论(0) 推荐(0) 编辑
摘要: Target(目标接口):所要转换的所期待的接口 Adaptee(源角色):需要适配的接口 Adapter (适配器):将源接口适配成目标接口,继承源接口,实现目标接口 Adaptee Target Adapter ConcreteAdaptee Client 阅读全文
posted @ 2017-10-21 11:10 啊哈咧 阅读(123) 评论(0) 推荐(0) 编辑
摘要: Product:抽象产品角色,它定义了这个产品的通用属性,相当于模子,它定义了一些功能,这些功能可以由子类去实现 ConcreteProduct:具体产品角色,它实现了抽象产品所定义的功能,每个 ConcreteProduct 相当于一个产品种类 Factory:抽象工厂,它定义了所有工厂都应该具有 阅读全文
posted @ 2017-10-21 10:43 啊哈咧 阅读(152) 评论(0) 推荐(0) 编辑