码迷,mamicode.com
首页 > 其他好文 > 详细

设计模式(4)Factory工厂设计模式

时间:2017-09-01 01:01:38      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:ring   register   模式   模板   具体类   处理   专用   str   实例   

一.什么是工厂模式

父类决定实例的生成方式,但并不决定索要生成的具体的类,具体的处理全部交给子类负责.

 

二.解析

1.父类Factory通过模板设计模式,定义create函数的模板,create用于生成其他类,并包含create所需要的两个抽象类createProduct,registerProduct.

2.子类IDCardFactory来实现reateProduct,registerProduct的具体方法.

------------以上完成了类的生成方式.

3.父类Product,定义了在工厂模式中生成的那些实例所持有的接口(API),但具体处理交付子类IDCard.

4.子类IDCard负责调用Product角色和生成实例的方法.

 

不用New关键字来生成实例,而是调用实例的专用方法来生成实例,这样就可以防止父类与其他具体类耦合.

 

三.实例

1.Main程序

public class Main{

  public static void main(String[] args){

    Factory factory = new IDCardFactory(); //factory的create方法用来创建IDCard实例

    Product card1 = factory.create("小明");

    Product card2 = factory.create("小红");

    Product card3 = factory.create("小刚");

    card1.use();

    card2.use();

    card3.use();

  }

}

 

设计模式(4)Factory工厂设计模式

标签:ring   register   模式   模板   具体类   处理   专用   str   实例   

原文地址:http://www.cnblogs.com/zhongxuan/p/7461116.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!