引入

工厂方法模式,只是针对一个产品层次类
多个结构相同的产品层次类并不适用
示例:
image.png

理论

何时使用

  • 当客户机对象想要创建一组相关的依赖类中的一个实例而不必知道要实例化哪个特定的具体类时,请使用抽象工厂模式

工厂方法模式与抽象工厂模式的区别

  • 产品不同
    • 对于工厂方法模式,产品是单个产品类层次结构
    • 对于抽象工厂模式,产品是一组产品类层次结构
  • 有关可扩展性
    • 工厂方法模式遵循开闭原理
    • 抽象工厂模式只部分遵循开闭原则

image.png
image.png