三种工厂模式的区别

简单工厂模式
只有一个工厂类,由这一个工厂类根据用户输入的条件来决定创建出哪一个产品类的实例。用户使用这一个工厂类并输入判断条件来创建相应的产品类实例。

工厂方法模式
有一个抽象工厂类(或接口),多个具体工厂类继承(或实现)抽象工厂类。每个具体工厂类只能创建一个具体产品类的实例。由用户决定使用哪个具体工厂类来创建对应的产品类实例。

抽象工厂模式
对工厂方法模式进行了扩展,区别是:工厂方法模式中每个具体工厂类,只能创建一个产品族的产品类实例。抽象工厂模式支持创建多个产品族的产品类实例。

关于静态工厂方法,我理解是:上述三种工厂模式中,工厂类中创建产品类实例的方法是静态的。就是工厂类不用实例化。

猜你喜欢

转载自blog.csdn.net/cjxunooo/article/details/84960639
今日推荐