工厂模式在《Java 与模式》中分为三类:
1)简单工厂模式(Simple Factory):定义一个工厂类,它可以根据参数的不同返回不同类型的实例,被创建的实例通常都具有共同的父类。因为在简单工厂模式中用于创建实例的方法是静态的方法,因此简单工厂模式又被称为静态工厂方法模式,它属于类创建型模式。
结构图如下:
2)工厂方法模式(Factory Method):定义一个用于创建对象的接口,让子类决定将哪一个类实例化。工厂方法模式让一个类的实例化延迟到其子类。工厂方法模式又简称为工厂模式,又可称作虚拟构造器模式或多态工厂模式。工厂方法模式是一种类创建型模式。
结构图如下:
3)抽象工厂模式(Abstract Factory) :提供一个创建一系列相关或相互依赖对象的接口,而无需指定他们具体的类。抽象工厂模式又称为Kit模式,它是一种对象创建型模式。
结构图如下: