用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象
非常简单的一个模式 ,简单程度和单例,迭代器模式差不多,核心就是一个实现clone方法,通过这个进行对象的拷贝。他是内存二进制流的拷贝,比new一个对象来说性能好很多,特别是一个循环体内产生大量的对象、产生一个对象需要消耗很多资源的时候(数据,硬件),更能体现出原型模式的优点。
需要注意的问题:
- 浅拷贝
- 深拷贝
- clone和final冲突
咱们今天拿群发消息来举例
| 类名 | 描述 |
|---|---|
| ShallowCopy | 浅拷贝 |
| DeepCopy | 深拷贝 |
| PrototypeMain | 原型模式执行类 |
| BaseMessage | 基础消息类 |