2010年11月4日

十二.结构型设计模式——Decorator Patten(装饰模式)

摘要: 定义  动态地给一个对象增加其他职责(Responsibility),就增加对象功能来说,装饰模式比生成子类实现更加灵活。  UML类图如下:    其中类和对象的关系为:  1. Component(部件):定义对象的接口,可以给这些对象动态增加职责(方法)。  2. ConcreteComponent(具体部件):定义具体的对象,Decorator可以给它增加额外的职责(方法)。  3. De... 阅读全文

posted @ 2010-11-04 22:34 tLEE 阅读(732) 评论(0) 推荐(0)

2010年11月3日

十一.结构型设计模式——Composite Pattern(组合模式)

摘要: 定义  组合多个对象形成树形结构以表示整体-部分的结构层次。组合模式对单个对象和组合对象的使用具有一致性。  UML类图如下:    其中类和对象的关系如下:  1. Component(部件抽象接口):为组合的对象申明接口;某些情况下,实现从此接口派生出所有类共有的默认行为;定义一个接口可以访问及管理它的多个子部件(GetChild);如果必要,也可以在递归结构中定义一个接口访问它的父节点,并且... 阅读全文

posted @ 2010-11-03 23:52 tLEE 阅读(846) 评论(0) 推荐(0)

2010年11月2日

十.结构型设计模式——Bridge Pattern(桥接模式)

摘要: 定义  将抽象部分与实现部分分离,使得它们两部分可以独立地变化。  UML类图如下:    其中类和对象的关系为:  1. Abstraction(抽象类):定义抽象类的接口,维护一个Implementor(实现抽象类)的对象。  2. RefinedAbstraction(扩充抽象类):扩充由Abstraction定义的接口。  3. Implementor(实现类接口):定义实现类的接口,这个... 阅读全文

posted @ 2010-11-02 21:20 tLEE 阅读(740) 评论(0) 推荐(0)

2010年11月1日

九.结构型设计模式——Adapter Pattern(适配器模式)

摘要: 定义  将一个接口转换成客户想要的另一个接口,适配器模式使接口不兼容的那些类可以一起工作。  UML类图如下:    其中类的定义及关系如下:    1. Target(目标抽象类):定义客户要用的特定领域的接口。  2. Adapter(适配器-公接口):调用另一个接口,作为一个转换器。  3. Adaptee(适配器-母接口):定义一个接口,Adapter需要接入。  4. Clinet(客户... 阅读全文

posted @ 2010-11-01 21:31 tLEE 阅读(813) 评论(0) 推荐(0)

2010年10月26日

八.创建型设计模式——Singleton Pattern(单例模式)

摘要: 定义  单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类,它提供全局访问的方法。单例模式的要点有三个:一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行想整个系统提供这个实例。  UML类图如下:    类和对象之间的关系为:  1.Singleton(单例):提供了一个instance的方法,让客户可以使用它的唯一实例。内部实现只生成一... 阅读全文

posted @ 2010-10-26 23:04 tLEE 阅读(684) 评论(0) 推荐(0)

浅拷贝与深拷贝

摘要: Shallow Copy(浅拷贝)与Deep Copy(深拷贝) 克隆有两种方法,浅表复制(Shallow Copy)和深层复制(Deep Copy)。进行浅表复制时,如果父类包含的子引用对象发生改变,这个变化也会同时出现在它的浅表复制的克隆对象中;而在深层复制中,如果父类对象发生改变,这个变化不会出现在它的深层复制的克隆对象中。 如图为Obj1原型。 当Obj1浅表复制到Obj2,它是被复制,但它包含的子对象却没有被复制,如图: 发生深层复制时,对象包含的引用也被复制,如图: 阅读全文

posted @ 2010-10-26 00:03 tLEE 阅读(227) 评论(0) 推荐(0)

2010年10月25日

七.创建型设计模式——Prototype Pattern(原型模式)

摘要: 定义  原型模式指定创建对象的种类,并且通过拷贝这些原型创建新的对象。Prototype模式允许一个对象再创建另外一个可定制的对象,根本无需知道任何创建的细节。工作原理是:通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝原型自己来实施创建过程。  UML类图如下:    其中的类和对象之间的关系为:  1. Prototype(抽象原型类):定义具有克隆自己的方... 阅读全文

posted @ 2010-10-25 22:28 tLEE 阅读(582) 评论(0) 推荐(0)

2010年10月23日

六.创建型设计模式——Builder Pattern(建造者模式)

摘要: 定义  将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。  建造者模式是一步一步创建一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建他们。用户不知道内部的具体构建细节。  UML类图如下:    其中的类或对象之间的关系为:  1. Builder(抽象建造者):为创建一个Product对象的各个部件指定抽象接口。  2. ConcreteBuilder... 阅读全文

posted @ 2010-10-23 00:08 tLEE 阅读(785) 评论(0) 推荐(0)

2010年10月22日

五.创建型设计模式——Abstract Factory Pattern(抽象工厂模式)

摘要: 定义  提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。抽象工厂(Abstract Factory)模式又称为Kit模式,属于对象创建型模式。  抽象工厂模式与工厂方法模式最大的区别在于:工厂方法模式针对的是一个产品等级结构,而抽象工厂模式则针对的是多个产品等级结构。正因如此,在抽象工厂模式中经常会用到产品族(Product Family)这一概念,它指的是位于不同的产品登记结... 阅读全文

posted @ 2010-10-22 00:02 tLEE 阅读(1115) 评论(0) 推荐(1)

2010年10月20日

四.创建型设计模式——Factory Method Pattern(工厂方法模式)

摘要: 定义  工厂方法模式又称工厂模式,也叫虚拟构造器(Virtual Constructor)模式或者多态工厂(Polymorphic Factory)模式,属于类的创建型模式。在工厂方法模式中,父类负责定义创建对象的公共接口,而子类则负责生成具体的对象,这样做的目的是将类的实例化操作延迟到子类中完成,即由子类来决定究竟应该实例化(创建)哪一个类。  在简单工厂模式中,一个工厂类处于对产品类进行实例化... 阅读全文

posted @ 2010-10-20 22:48 tLEE 阅读(964) 评论(0) 推荐(0)

导航