一、UML图
二、包含的角色
(1)抽象工厂
(2)具体工厂
(3)抽象产品
(4)具体产品
三、优势
(1)工厂方法模式是对简单工厂模式的稍微的改进。工厂方法模式的用意是定义一个创建产品对象的工厂接口,将实际工作推迟到子类中。
(2)与简单工厂模式相比,制造产品的工厂类不再 只有一个,而是每种具体产品类都对应一个生产它的具体工厂类。而这些具体工厂类的共同特征再被提取出...
分类:
其他好文 时间:
2014-11-09 23:56:24
阅读次数:
407
一、UML图
二、包含的角色
简单工厂模式包含三个角色:(1)工厂类Factory(2)抽象产品类AbstractProduct(3)具体产品类ConcreteProduct。
(1)Factory:工厂类是用来制造产品的。因此,在Factory中有一个用于制造产品的Create函数或者Generate函数之类的函数。这个函数能够根据“标识符”的不同生成不同的ConcreteProd...
分类:
其他好文 时间:
2014-11-09 15:18:02
阅读次数:
146
工厂方法模式主要是对简单工厂模式的改良.由于这个简单工厂模式中,工厂类负责的所有对象的创建,那么,当子类不断增多的时候,我们就需要去修改工厂的代码,这样呢,就违反了一个原则:开闭原则.(假如真的要创建一个cat,工厂是没有创建cat的功能的.现实情况可能真的有创建cat的需求的,所以这个时候就需要更...
分类:
其他好文 时间:
2014-11-09 13:47:30
阅读次数:
211
抽象工厂:为一个产品家族提供了统一的创建接口。当需要这个产品家族的某一系列的时候,可以从抽象工厂中选出相对系的系列来创建一个具体的工厂类别。...
分类:
其他好文 时间:
2014-11-06 14:56:05
阅读次数:
141
工厂方法模式,往往是设计模式初学者入门的模式,的确,有人称之为最为典型最具启发效果的模式。android中用到了太多的工厂类,其中有用工厂方法模式的,当然也有很多工厂并不是使用工厂方法模式的,只是工具管理类。今天以ThreadFactory举例说明一下简单工厂模式和工厂方法模式。工厂方法模式,Fac...
分类:
移动开发 时间:
2014-11-06 12:25:04
阅读次数:
164
dom解析解析步骤:需要工厂类DocumentBuilderFactory调用初始化直接newDocumentBuilder返回一个DocumentBuilder对象通过parse方法可以解析xml可以传入相对路劲和绝对路径Parse返回的是Document对象注意导包需要导入的是W3C的接着对xm...
分类:
其他好文 时间:
2014-11-03 22:28:07
阅读次数:
256
写在前面:本人最近在看《大话设计模式》这本书,书里是用C#讲解的实例。现在写心得笔记与大家分享,就试着写一个JAVA版的。例子还是书里的例子。不过是Java语言实现的。后面也会给出本人的一些理解建议。谢谢《大话设计模式》的作者。
一、什么是简单工厂模式?
简单工厂模式是工厂模式里最简单的一种,所以叫做简单工厂模式。简单工厂模式需要一个工厂类去对类的实例进行条件分发,这样可以省去程序分发时的麻烦...
分类:
其他好文 时间:
2014-11-03 21:02:47
阅读次数:
252
工厂模式:1.抽象产品(接口)2.具体产品(实现类)3.生产者(工厂类)抽象产品:具体产品生产者:
分类:
其他好文 时间:
2014-11-03 14:21:56
阅读次数:
188
循环依赖,就是说类A依赖与B,而B又依赖于A,这种情况本不应该发生,发生这种情况是因为我在项目中使用的工厂模式,用一个工厂来生产一些管理器类,而某一管理器要需要另一管理器提供支持所以就要引用工厂类,而这个管理器和这个工厂就出现了循环依赖(项目中实际的逻辑比这个更复杂,因为我在项目中实现的了一个工作流...
分类:
编程语言 时间:
2014-10-21 19:34:16
阅读次数:
380
工厂方法模式:一个抽象产品类,可以派生出多个具体产品类。 一个抽象工厂类,可以派生出多个具体工厂类。 每个具体工厂类只能创建一个具体产品类的实例。抽象工厂模式:多个抽象产品类,每个抽象产品类可以派生出多个具体产品类。 一个抽象工厂类,可以派生出多个具体工厂类。 每个具体工厂类可以创建...
分类:
其他好文 时间:
2014-10-21 10:05:20
阅读次数:
180