梦幻之旅

DEBUG - 天道酬勤

   :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  671 随笔 :: 6 文章 :: 256 评论 :: 0 Trackbacks
抽象工厂
抽象工厂又叫配套模式.

该模式和工厂方法模式很相似,也是一个抽象基类和若干个具体工厂类,不同的是抽象工厂的工厂基类定义了多个虚工厂方法,每个虚工厂方法负责返回一种产品,多个工厂方法返回多种产品,并且这些产品具有某些联系。
GOF 概扩: 提供一个一系列或相互依赖的接口,需无须指定它们的具体类.
抽象工厂模式的组成部份:
1.产品基类
2.具体产品
3.工厂基类
4.具体工厂
    抽象工厂就不止生产Nokia手机了,还生产相关的周边产品,首先NokiaFactory基类会定义两个虚方法,一个是CreateNokiaPhone用来生产手机,另一个是CreateNokiaCharger用于生产对应型号的手机充电器(假定不同型号手机使用不同的充电器)。然后派生类N97Factory就要生产两种相关的产品,一个是N97Phone,还有一个是N97Charger,这两个对象是对应的关系,因此封装到抽象工厂来生产一系列相关的对象

    总结:用最简单的话来概括就是,简单工厂只有一个具体工厂类来创建一种基类多个不同派生类,工厂方法就是有多个派生于一个基类的具体工厂类,每个具体工厂只生产一种基类的一个派生类,抽象工厂也是只有一个工厂基类,但是每个具体工厂生产多个相关基类各一个派生类


 

posted on 2011-08-01 23:23 HUIKK 阅读(201) 评论(0)  编辑  收藏 所属分类: Design Patterns

只有注册用户登录后才能发表评论。


网站导航: