102简单工厂模式

66 阅读1分钟

定义

又称为静态工厂模式。根据参数不同返回不同类型的实例。简单工厂模式专门定义一个类来生成其他实例,被创建的类有共同的父类。

优点:只要输入参数,就可以有产品。 缺点:如果产品很多,就必须要修改类。

类图

图片1.png

代码

public class SimpleFactory {
    public static Product createProduct(String type){
        if(type.equals("A")){
            return new ProductA();
        }else{
            return new ProductB();
        }
    }
    public static void main(String[] args) {
        Product productA = SimpleFactory.createProduct("A");
        productA.print();
        Product productB = SimpleFactory.createProduct("B");
        productB.print();
    }
}
abstract class Product{
    public abstract void print();
}

class ProductA extends Product{
    @Override
    public void print() {
        System.out.println("产品A");
    }
}

class ProductB extends Product{
    @Override
    public void print() {
        System.out.println("产品B");
    }
}