1.原型模式(Prototype),用原型執行個體指定建立對象的種類,并且通過拷貝這些原型建立新的對象。
2.原型模式(Prototype)結構圖

3.原型模式其實就是從一個對象再建立另外一個可定制的對象,而且不需知道任何建立的細節。
4.對于.Net而言,那個原型抽象類Prototype是用不着的,因為克隆實在是太常用了,是以.Net在System命名空間中提供了ICloneable接口,其中就是唯一的一個方法Clone(),這樣就隻需要實作這個接口就可以完成原型模式了。
5.一般在初始化的資訊不發生變化的情況下,克隆是最好的辦法,這既隐藏了對象建立的細節,又對性能是大大的提高。它等于是不用重新初始化對象,而是動态地獲得對象運作時的狀态。
6.“淺複制”是指被複制對象的所有變量都含有與原來的對象相同的指,而所有的對其他對象的引用都仍然指向原來的對象。“深複制”是把引用對象的變量指向複制過的新對象,而不是原有的被引用的對象。
轉載于:https://www.cnblogs.com/qinzhijun/archive/2012/02/23/2365674.html