- 优势:理解容易
- 劣势:违反了开闭原则? 调用方
- 假设:新增了一个种类的披萨
分类介绍
- 简单工厂模式
- 工厂方法模式
- 抽象方法模式
简单工厂模式
定义了一个创建对象的类(工厂类),由这个类来封装实例化对象的行为,在简单工厂模式中,可以根据参数的返回不同类来实现
案例分析
使用简单工厂模式,工厂类只有一个,只需要改动一个地方
避免了业务逻辑的代码和创建对象的代码大量耦合---->降低耦合
让代码条理更清晰,更优雅
静态工厂模式
工厂方法模式
定义一个创建对象的抽象方法,由子类决定要实例化的类
工厂方法就是简单工厂模式的衍生
实现了可扩展
层次结果更复杂,可以应用到更复杂的场合
抽象工厂模式
定义了一个interface用于创建相关或有依赖关系的对象簇,而无需指明具体类型
对象簇:一系列的对象
抽象工厂模式:简单工厂模式和工厂方式模式的整合