..
prototype
原型模式
1. 意图
复制已有对象,而无需使代码依赖其所属类
2. 问题
Clone一个对象,可以通过set方法将对象的属性全部赋予值,也可以通过BeanUtils赋予新对象属性,但是,有些为父类引用,并不知道子类实现的属性,无无法直接复制该对象。
3. 解决方法
可以将clone过程交给被复制的对象来完成该操作,被clone的对象可以复制当前对象存在的属性。为所有支持clone的类实现一个通用接口。支持clone的对象即为原型。
4. 原型模式组件
- 原型:对clone方法进行声明的接口
- 具体原型:对clone方法进行实现
5. 原型模式结构
- 基本实现
- 原型注册表实现
6. 实现步骤
- 创建原型接口,并声明clone方法
- 具体对象实现原型接口,并且实现clone方法