原型模式:使用原型實例指定待創建對象的類型,並且通過複製這個原型來創建新的對象.
原型模式角色:抽象原型,具體原型,客戶.
克隆分爲淺克隆和深克隆.
Java語言中的clone()方法和Cloneable接口,淺克隆.
使用序列化實現深克隆.
原型管理器:將多個原型放入容器中統一進行管理.
原型模式優點:簡化對象的創建過程.提高創建效率,可以保存對象狀態.
原型模式缺點:實現原型需要對原型類進行修改,實現深克隆需要每一層對象都支持深克隆,實現較爲麻煩.
原型模式適用於創建新對象成本大,要保存對象的狀態,而狀態變化很小的場景.