工厂方法模式 - 章节
概念
·不公开实例化逻辑
·推迟到子类
·公共接口
·架构指定,用户实现
·例子:
- Calendar
- ResourceBundle
- NumberFormat
设计注意事项
工厂负责产品的生命周期
通用接口
具体类
参数化的创建方法
示例:Calendar
训练:工厂
创建页面
创建网站
创建具体类
创建工厂
枚举
陷阱
·复杂性
·创造·子类
·重构
对比
单例
·返回相同的实例
- 一个构造函数方法—无args
·没有接口
·没有子类
工厂
·返回不同的实例
- 多个构造函数
·接口驱动
·子类
·更容易适应环境
工厂总结
·参数驱动的
·创造·解决复杂
·有点复杂
·与单例相反