工厂模式

Posted 学习笔记和总结

tags:

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

工厂模式属于创建型模式,由一个工厂对象决定创建出哪一种产品类的实例。

 

角色:

IProduct: 产品共同的接口

Product1:具体的产品类

Creator:工厂类,可根据参数决定创建的产品类型

 

示例:

public interface IProduct {
    void myfunction();
}

 

---

class Product1 implements IProduct{
    public void myfunction(){
        System.out.println("function1");
    }
}

 

---

class Product2 implements IProduct {
    public void myfunction() {
        System.out.println("function2");
    }
}

 

---

public class Factory{
    public static IProduct product(int k){
        if (k == 1) {
            return new Product1();
        } else if (k == 2) {
            return new Product2();
        }
        return null;
    }
}

 

---

public class FactoryTest{
    public static void main(String[] args){
        IProduct product = Factory.product(2);
        if (product != null) {
            product.myfunction();
        }
    }
}

 

 

end

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

设计模式学习——简单工厂模式工厂模式抽象工厂模式

设计模式简单工厂模式 ( 简介 | 适用场景 | 优缺点 | 代码示例 )

设计模式学习——简单工厂模式工厂模式抽象工厂模式

设计模式工厂方法模式 ( 简介 | 适用场景 | 优缺点 | 代码示例 )

设计模式-简单工厂工厂方法模式抽象工厂模式详解

C++工厂模式(简单工厂工厂方法抽象工厂)