摘要: 1.特点:子系统的高层接口,避免两个类直接关系的第三者。2.概念:为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。3.类图:4.程序实现:/// /// 子系统中的一个类 /// public class SubSystem... 阅读全文
posted @ 2015-08-14 10:33 ice_baili 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 1.特点:在初始化信息不发生变化时考虑。2.概念:通过复制一个已经存在的实例来创建一个新的实例。被复制的实例被称为原型,这个原型是可定制的。3.类图:4.程序实现:/// /// 实现了ICloneable接口的简历类 /// public class Resume:IClon... 阅读全文
posted @ 2015-08-14 10:19 ice_baili 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 1.特点:通过代理访问真实对象。 2.概念:为其它对象提供一种代理以控制对这个对象的访问。 3.类图: 4.程序实现: 阅读全文
posted @ 2015-08-14 10:02 ice_baili 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 1.特点:当对象内状态改变而执行不同操作时考虑,状态转移逻辑不在if/switch中,而在各子类之间,增/改状态和状态转换较容易。2.概念:当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。3.类图:4.程序实现:/// /// Context类,维护一个Concret... 阅读全文
posted @ 2015-08-14 09:49 ice_baili 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 1.特点:一般先用工厂方法解决对象创建问题。2.概念:定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到子类。3.类图:4.程序实现:/// /// 抽象工厂,声明了一个创建Product的方法 /// public abstract clas... 阅读全文
posted @ 2015-08-14 09:42 ice_baili 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 1.特点:当工厂方法无法满足多系列问题时,再重构为抽象工厂。2.概念:抽象工厂模式为一个产品家族提供了统一的创建接口。当需要这个产品家族的某一系列的时候,可以从抽象工厂中选出相对应的系列来创建一个具体的工厂类别。3.类图:4.程序实现:/// /// 抽象工厂类 /// pub... 阅读全文
posted @ 2015-08-13 20:33 ice_baili 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 1.特点:只需一个实例时考虑。2.概念:保证一个类仅有一个实例,并提供一个访问它的全局访问点。3.类图:4.程序实现: 1)懒汉式:对于懒汉模式,我们可以这样理解:该单例类非常懒,只有在自身需要的时候才会行动,从来不知道及早做好准备。它在需要对象的时候,才判断是否已有对象,如果没有就立即创建一个对象... 阅读全文
posted @ 2015-08-13 19:55 ice_baili 阅读(380) 评论(0) 推荐(0) 编辑
摘要: 1.特点:让接口不相容的类能协同工作。(亡羊补牢)2.概念:适配器模式,将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。3.类图:4.程序实现:/// /// 定义客户端期待的接口 /// public c... 阅读全文
posted @ 2015-08-13 19:39 ice_baili 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 1.特点:多个部件的建造实现相同,只是所需部件、建造顺序不同时考虑。2.概念:是将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。3.类图:说明:1) builder:抽象接口,以规范产品对象的各个组成成分的建造。这个接口规定要实现复杂对象的哪些部分的创建,并不涉及具体的对... 阅读全文
posted @ 2015-08-07 13:52 ice_baili 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 1.特点:一对多依赖关系,一端变化、多端得到通知并自动更新。(目标与观察者可实现弱耦合)2.概念:有时被称作发布/订阅模式,观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己。3.类图:4.代码实现... 阅读全文
posted @ 2015-08-07 12:37 ice_baili 阅读(161) 评论(0) 推荐(0) 编辑