设计模式(4)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();

  }

}

 

posted on 2017-08-31 23:34  li仲玄  阅读(123)  评论(0编辑  收藏  举报

导航