工厂方法——设计模式系列

原创 2012年03月30日 10:49:40

        工厂方法大家都很熟悉了,简单概括就是专门创建几个类来创建业务逻辑对象,它专注于让子类决定创建什么对象。

        工厂方法在以下情形下会用到:编译器无法准确预期要创建对象的类;类想让其子类决定在运行时创建什么。要实现这一目标,就需要有一个产品父类和生成器父类。

        核心代码如下:

- (void) loadCanvasViewWithGenerator:(CanvasViewGenerator *)generator    //CanvasViewGenerator是父类生成器,当需要创建对象的时候传入相应的生成器

{

  [canvasView_ removeFromSuperview];

  CGRect aFrame = CGRectMake(0, 0, 320, 436);

  CanvasView *aCanvasView = [generator canvasViewWithFrame:aFrame];      //创建对象,子类覆盖此方法

  [self setCanvasView:aCanvasView];

  NSInteger viewIndex = [[[self view] subviews] count] - 1;

  [[self view] insertSubview:canvasView_ atIndex:viewIndex];

}


【设计模式】简单工厂模式与工厂方法模式详细解读

1.前言     设计模式,各具特色,今天在此总结一下常见模式中 简单工厂模式与工厂方法模式的区别与联系 2.两种模式概要    1. 简单工厂模式         对于简单工厂模式的介绍,请...
  • yudandan10
  • yudandan10
  • 2013年03月10日 15:09
  • 4695

Android设计模式(四)- 工厂方法模式

工厂方法模式也是创建型模式。 工厂模式根据抽象程度可以分为三种:简单工厂模式,工厂方法模式,抽象工厂模式。定义定义一个用于创建对象的接口,让子类决定实例化哪一个类。使用场景任何需要生成复杂对象的地方...
  • qq_25806863
  • qq_25806863
  • 2017年03月27日 23:55
  • 1157

创建型模式之工厂方法模式(日志记录器)

类图 package cn.factory2; public class Client { public static void main(String[] args) { try { ...
  • zenglinshan
  • zenglinshan
  • 2015年11月04日 15:38
  • 1226

【设计模式系列】--工厂方法

在前面的博文,小编介绍了简单工厂方法,今天我们继续来学习设计模式的知识。...
  • u010850027
  • u010850027
  • 2016年09月25日 17:20
  • 1294

Java设计模式——工厂方法(Factory Method)

什么是工厂方法定义一个创建产品对象的工厂接口,让子类决定实例化哪一个类,将实际创建工作推迟到子类当中。它的核心结构有四个角色,分别是 【抽象工厂】Factory : 具体工厂类必须实现这个接口。在...
  • qian520ao
  • qian520ao
  • 2017年05月23日 22:29
  • 409

设计模式——工厂方法 Java源代码

本程序改编自《Head First Design Patterns》中的Pizza例子,我本学期早上经常吃包子。总共有11个类:...
  • u013390476
  • u013390476
  • 2015年12月22日 12:52
  • 3338

浅谈JAVA设计模式之——工厂方法(FactoryMethod)

一、概述             定义一个用于创建对象的接口,让子类决定实例化哪一个类。FactoryMethod使一个类的实例化延迟到其子类。       二、适用性  当一个类不知道它所必须创建...
  • l1028386804
  • l1028386804
  • 2015年05月02日 17:27
  • 1074

【软考学习】设计模式——工厂方法

【背景】 设计模式是非常重要的一块知识,每个设计模式都值得深入了解和学习。 【内容】 工厂方法设计模式总结:     一、定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类...
  • YYM15732626210
  • YYM15732626210
  • 2017年11月05日 21:56
  • 321

JAVA设计模式——工厂方法

定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使一个类的实例化延迟到其子类。 类型:创建类模式 类图: 工厂方法模式代码 [java] v...
  • joker_wqz
  • joker_wqz
  • 2013年05月21日 20:02
  • 362

java设计模式——抽象工厂方法

说明:什么使用我们可以使用抽象工厂方法?怎么使用抽象工厂方法 应用场景:当我们建立的两个类之间有组合关系的时候,比如说学校、老师、学生。这那个之间的关系是:学校可以使一中、二中、三中。老师可...
  • h249059945
  • h249059945
  • 2012年04月28日 13:50
  • 421
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:工厂方法——设计模式系列
举报原因:
原因补充:

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