一、描述
创建型设计模式包括如下几个:简单工厂模式(Simple Factory)、工厂方法模式(Factory Method)、抽象工厂模式(Abstract Factory)、创建者模式(Builder)、原型模式(Prototype)、单例模式(Singleton)。
二、六种创建型设计模式的比较
简单工厂模式:简单工厂模式又叫静态工厂模式,它定义一个具体的工厂类来负责所有产品...
分类:
其他好文 时间:
2015-05-02 16:37:55
阅读次数:
159
1、简单工厂模式
简单工厂模式是属于创建型模式,又叫做静态工厂方法(StaticFactory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。
工厂(Creator)角色
简单工厂模式的核心,它负责实现创建所有...
分类:
其他好文 时间:
2015-05-02 11:18:13
阅读次数:
183
设计模式之简单工厂举例:
l简单工厂模式概述
?又叫静态工厂方法模式,它定义一个具体的工厂类负责创建一些类的实例
l优点
?客户端不需要在负责对象的创建,从而明确了各个类的职责
l缺点
这个静态工厂类负责所有对象的创建,如果有新的对象增加,或者某些对象的创建方式不同,就需要不断的修改工厂类,不利于后期的维护
概述:
动物抽象类:public abstract Animal ...
分类:
编程语言 时间:
2015-05-02 09:47:42
阅读次数:
131
一、描述
基于简单工厂模式中将所有类的创建和初始化放在一个工厂类中出现的问题,我们引进了工厂方法模式,该模式是GoF总结的23种设计模式的第一种,这个设计模式将一个工厂类拆分成多个具体的工厂类,每个具体的工厂类负责相应的类的对象的创建。
在工厂方法模式中,抽象工厂类负责定义创建对象的接口,具体对象的创建由实现该抽象工厂的具体工厂类来完成,它由四部分组成:抽象工厂类、实现抽象工厂类的具体工厂类、...
分类:
编程语言 时间:
2015-04-30 23:18:38
阅读次数:
309
一、描述
简单工厂模式又名静态工厂方法模式,是所有工厂模式中最简单的一个,它定义一个具体的工厂类来负责创建所有类的对象并初始化创建的对象,它主要由3部分组成:工厂类、抽象类、实现抽象类的具体类,然后通过客户端调用工厂类创建相应的对象。
注意:简单工厂模式不属于GoF总结的23种设计模式,它是相当于初学java的HelloWorld案例,帮助初学者了解设计模式,增长信心的一个设计模式。...
分类:
编程语言 时间:
2015-04-30 21:50:17
阅读次数:
170
一、简单工厂模式,因为创建对象的方法是static的,所以也叫静态工厂模式。 由来:静态工厂模式是为了对产品类有统一的创建方法,而对于客户端如何创建"产品"是不需要知道也不需要管的。 通过客户端提供的信息,new出不同的“产品” 关键代码:class Factory(){ public st...
分类:
其他好文 时间:
2015-04-29 16:34:34
阅读次数:
135
设计模式分为三类: 创建型,描述如何创建对象,结构型,描述在程序中如何构建类或者对象之间的组合关系,行为型,描述类或对象如何分工合作和交互。 创建型模式: 单例模式、简单工厂模式、工厂方法模式、抽象工厂模式、原型模式、建造者模式 结构型模式:设配器模式、代理模式、组合模式、桥接模式、装饰模式、...
分类:
其他好文 时间:
2015-04-28 17:49:14
阅读次数:
208
简单工厂、工厂方法和抽象工厂三种设计模式都用来帮助我们将对象的实例化部分抽取出来,优化系统结构,在开发中经常使用。三者既有区别,也有联系,今天来对这三种设计模式做一个简单的记录。概述
简单工厂:用来生产同一等级结构中的任意产品(对于增加新的产品,需要修改工厂)
工厂方法:用来生产同一等级结构中的固定产品(支持增加新的产品)
抽象工厂:用来生产不同产品族的全部产品(支持增加新的产品族,不支持增加新的产...
分类:
其他好文 时间:
2015-04-27 09:49:08
阅读次数:
93
何为简单工厂模式: 通过专门定义一个类,来负责创建其他类的实例,这些其它类通常具有共同的父类。简单工厂模式的UML类图:简单工厂模式中包含的角色和相应的职责如下: 工厂类Creator:简单工厂模式的核心,负责创建所有类的实例。该工厂类必须能够被客户端类调用,创建所需要的产品对象。 抽象产品类...
分类:
其他好文 时间:
2015-04-26 22:28:47
阅读次数:
125
在简单工厂模式中,通过一个工厂类来判断需要调用的具体的实现类,隔离了客户端和具体的实现类之间的关系,从而降低了系统间的耦合性,但是也带来了一个问题,就是如果要创建的对象很多,这个工厂类会非常庞大,仍然不利于后期的代码维护。
工厂方法模式:
一个抽象产品类,可以派生出多个具体产品类。
一个抽象工厂类,可以派生出多个具体工厂类。
每个具体工厂类只能创建一个具体产...
分类:
其他好文 时间:
2015-04-25 13:44:19
阅读次数:
100