设计模式Factory工厂设计模式

Posted li仲玄

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式Factory工厂设计模式相关的知识,希望对你有一定的参考价值。

一.什么是工厂模式

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

 

二.解析

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();

  }

}

 

以上是关于设计模式Factory工厂设计模式的主要内容,如果未能解决你的问题,请参考以下文章

设计模式之Factory(工厂)(转)

Java设计模式之工厂模式(Factory模式)介绍(转载)

工厂模式(Factory)

工厂设计模式 Factory

浅析设计模式——创建型模式之Abstract-Factory(抽象工厂模式)

C++设计模式——工厂模式(Factory Pattern)