设计模式--工厂模式(工厂方法、抽象工厂)

原创 2015年07月09日 22:39:17

1、工厂方法模式(Factory Method):定义一个用于创建对象的接口,让子类决定实例化哪个类。工厂方法使一个类的实例化延迟到其子类。

正如创建交通工具,可以通过不同的工厂方法创建所需的对象。


2、抽象工厂模式(Abstract Factory):提供一个创建一些列相关或相互依赖对象的接口,而无需指定他们具体的类。

类图:


对比:

1、工厂方法在产品维度,即类图中Movable方向拓展比较方便,只需增加对应的类及相应的工厂方法即可。

2、抽象工厂:方便用于一系列产品的创建,可知具体工厂方法中包含所有产品创建的抽象方法。

3、工厂方法在增加另一种产品时,改动较多。想相反,抽象工厂在增加单种类的产品时修改较多。

版权声明:本文为博主原创文章,未经博主允许不得转载。

AS3设计模式之工厂模式

来由:as3中许多类采用类似这样的代码:public class Client { public function doSth():void { var object:Object = new Pr...
  • tomyail
  • tomyail
  • 2010年04月28日 21:46
  • 3077

Java设计模式—工厂方法模式&抽象工厂模式

工厂方法模式与抽象工厂模式都是设计模式中重要而且常见的模式。 通用类图如下:         在工厂方法模式中,抽象产品类Product负责定义产品的共性,实现对事物最抽象的定义;C...
  • qq_25827845
  • qq_25827845
  • 2016年09月11日 15:07
  • 4683

简单工厂模式、工厂方法模式、抽象工厂模式 之间的对比

简单工厂模式、工厂方法模式、抽象工厂模式 之间的对比
  • u013761036
  • u013761036
  • 2016年06月23日 20:10
  • 1014

抽象工厂泛型解决方案

http://blog.163.com/xu_shuhao/blog/static/52577487201172210120776/ 通常我们在做VS多层架构的开发中都会用到数据访问...
  • zunguitiancheng
  • zunguitiancheng
  • 2015年09月08日 23:27
  • 445

设计模式——抽象工厂模式及在jdk中的应用+几种工厂模式的比较

抽象工厂模式(Abstract Factory) 工厂方法模式有一个问题就是,类的创建依赖工厂类,也就是说,如果想要拓展程序,必须对工厂类进行修改,这违背了闭包原则,所以,从设计角度考虑,有一定的问...
  • qqqqq1993qqqqq
  • qqqqq1993qqqqq
  • 2017年08月17日 16:39
  • 364

设计模式【工厂方法模式】

本文主要是分享自己在学习设计模式过程中的心得与记录,有什么不当之处,望各位有心关注的看官,给予指证与说明。本文主要讲述【工厂方法模式】,望各位细细品读。【转载使用,请注明出处:http://blog....
  • ma_hoking
  • ma_hoking
  • 2014年09月23日 22:34
  • 1220

抽象工厂模式和工厂方法模式区别

首先来看看这两者的定义区别: 工厂模式:定义一个用于创建对象的借口,让子类决定实例化哪一个类 抽象工厂模式:为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类        个...
  • liu88010988
  • liu88010988
  • 2016年03月04日 09:48
  • 3583

简单工厂、工厂方法和抽象工厂模式示例

我们常常会听到“工厂方法”设计模式,也常常看到简单工厂、工厂方法和抽象工厂模式被人们放在一起进行对比。不仅因为它们的名字中都有“工厂”二字,而且它们的确看起来实在是太像了。我今天也来写一写我对这三种设...
  • zhutulang
  • zhutulang
  • 2015年02月05日 22:32
  • 2855

设计模式:浅析 抽象工厂、工厂方法、简单(静态)工厂 java实现

抽象工厂 抽象工厂:多个抽象产品类,派生出多个具体产品类;一个抽象工厂类,派生出多个具体工厂类;每个具体工厂类可创建多个具体产品类的实例。 即提供一个创建一系列相关或相互依赖对象的接口...
  • df1012890048
  • df1012890048
  • 2014年08月19日 01:24
  • 1390

scala实现设计模式之简单工厂模式

package com.linewell.modeldesgin.simplefactory /** * Created by ctao on 2015/8/6. * 抽象产品类,抽象图表特质,...
  • cjuexuan
  • cjuexuan
  • 2015年08月06日 20:37
  • 803
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:设计模式--工厂模式(工厂方法、抽象工厂)
举报原因:
原因补充:

(最多只允许输入30个字)