工厂模式

2020-05-16  本文已影响0人  俊果果

ONE、简单工厂模式(静态工厂模式)

一、介绍

简单工厂模式是属于创建型模式,是工厂模式的一种。简单工厂模式是由一
个工厂对象决定创建出哪一种产品类的实例。简单工厂模式定义了一个创建对象的类,由这个类来封装实例化对象的行为(代码)。在软件开发中,当我们会用到大量的创建某种、某类或者某批对象时,就会使用到工厂模式.

二、实现方法

直接贴几篇讲的比较清楚的文章吧

public class VendorFactory {
    // 这里提供了一个静态方法供外部调用,所以叫静态工厂模式
    public static IVender createVendor(String type) {
        switch (type) {
            case "A":
                return new VendorA();
            case "B":
                return new VendorB();
            default:
                throw new RuntimeException("供应商不存在");
        }
    }
}
public class Client {
    public static void main(String[] args) {
        String type = "A";
        IVender iVender = VendorFactory.createVendor(type);
        iVender.order();
    }
}

三、总结

TWO、工厂方法模式

一、介绍

现在对简单工厂模式进行修改,不再设计一个工厂类来统一负责所有产品的创建,而是将具体产品的创建过程交给专门的工厂子类去完成。
我们先定义一个抽象的工厂类,再定义具体的工厂类来生产不同的子类产品,它们实现在抽象工厂类中定义的方法。
这种抽象化的结果使这种结构可以在不修改具体工厂类的情况下引进新的产品,如果出现新的产品类型,只需要为这种新类型的产品创建一个具体的工厂类就可以获得该实例,这一特点无疑使得工厂方法模式具有超越简单工厂模式的优越性,更加符合“开闭原则”。

二、实现方法

直接贴几篇讲的比较清楚的文章吧

三、总结

THREE、抽象工厂模式

一、介绍

工厂方法模式的工厂是创建出一种产品,而抽象工厂是创建出一类产品

二、实现方法

直接贴几篇讲的比较清楚的文章吧

三、总结

上一篇 下一篇

猜你喜欢

热点阅读