简单工厂模式
又叫做静态工厂方法(StaticFactory Method)模式,但不属于23种GOF设计模式之一。
简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类。
spring中的BeanFactory就是简单工厂模式的体现,根据传入一个唯一的标识来获得bean对象,但是否是在传入参数后创建还是传入参数前创建这个要根据具体情况来定。如下配置,就是在 HelloItxxz 类中创建一个 itxxzBean。
简单工厂模式是类的创建模式,又叫做静态工厂方法(Static Factory Method
)模式。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。
工厂方法模式的用意是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类中。
工厂方法模式跟简单工厂模式在结构上的不同是很明显的,工厂方法模式的核心是一个抽象工厂类,而简单工厂模式的核心在一个具体类。显而易见工厂方法模式这种结构更好扩展,权力下发,分布式比集中式更具优势。
工厂方法模式和抽象工厂模式对比
- 工厂方法模式是一种极端情况的抽象工厂模式,而抽象工厂模式可以看成是工厂方法模式的推广。
- 工厂方法模式用来创建
一个
产品的等级结构,而抽象工厂模式是用来创建多个
产品的等级结构。 - 工厂方法模式只有一个抽象产品类,而抽象工厂模式有多个抽象产品类。
- 工厂方法模式中具体工厂类只有一个创建方法,而抽象工厂模式中具体工厂类有多个创建方法。
https://mp.weixin.qq.com/s/r-qpeH9RTJUAVaB3fpxJkg