设计模式 三种工厂模式 - Gukie/interview GitHub Wiki
工厂模式,就是模拟现实生活中的工厂生产产品的过程
- 产品线(产品等级) 与 产品族 的概念

- 简单工厂
需要传参数,会根据传什么参数,返回不同的产品(实例)

- 工厂方法 一个抽象工厂类 一个抽象产品类 每一个具体工厂,只能生产一种产品
很容易扩展新产品

- 抽象工厂 一个抽象工厂类 多个抽象产品类 每一个具体的工厂可以生产一个产品族,即多个产品 优点: 3.1. 切换产品族很容易 3.2. 将接口与实现分离开来了 缺点: 新增一个产品,会比较的麻烦
比如说,每个汽车公司可能要同时生产轿车,货车,客车,那么每一个工厂都要有创建轿车,货车和客车的方法

refer: