简介
工厂方法模式分为三种
- 简单工厂方法模式
- 多工厂方法模式
- 静态工厂方法模式
简单工厂方法模式
创建共同接口
以发短信和发邮件为例
|
|
创建实现类
|
|
|
|
建工厂类
|
|
测试
|
|
简单工厂违背了开闭原则,每次添加一个类都要修改工厂类,并且如果传递的字符串出错,则不能正确创建对象
多工厂方法模式
工厂方法模式是提供多个工厂方法,分别创建对象。
工厂类
|
|
测试
|
|
工厂方法模式使用时每次都new一个工厂类,不是很方便,所以大多数情况我们都是用静态工厂模式
静态工厂方法模式
将工厂方法模式中的方法都变为static 静态的既可直接调用,不需要创建实例
工厂类
|
|
测试
|
|
总结
工厂方法模式适合:凡是出现了大量的产品需要创建,并且具有共同的接口时,可以通过工厂方法模式进行创建。大多数情况下我们都会选择使用静态工厂方法模式