將乙個物件作為原型,對其進行複製、轉殖,產生乙個和原物件類似的新物件。
淺複製:將乙個物件複製後,基本資料型別的變數都會重新建立,而引用型別,指向的還是原物件所指向的。
深複製:將乙個物件複製後,不論是基本資料型別還有引用型別,都是重新建立的。
優點:當直接建立物件的代價比較大時,採用這種模式會使建立效能提高。
逃避只能利用建構函式建立物件的約束。
缺點:對於全新的類利用介面實現轉殖很容易,但對於已有的類,不一定類的物件引用成員也實現了相應轉殖介面以便於我們實現原型模式,
需要實現 cloneable 介面 或是 序列化介面。
物件複製
序列化與反序列化
建立型 原型模式
1 原型模式意圖 用原型例項指定建立物件的種類,並且通過拷貝這些原型建立新的物件。2 場景描述 原型模式,利用例項自身的轉殖功能來得到與原例項相同的新的例項。設想西遊記中的乙個場景,唐僧師徒四人 白龍馬除外 不過,該唐僧是個多事 喜歡使喚徒弟的唐僧。每當有事時,唐僧便會使喚他的三個徒弟去做。但是三個...
建立型設計 原型模式
宣告一下 本文的文字多數文字都是來自網上,只有例子是自己寫的。因為自我感覺還沒有能力能夠系統的解釋乙個模式,已經有現成的比較完善的說明,就不重複造輪子哈。原型模式是一種建立型設計模式,它通過複製乙個已經存在的例項來返回新的例項,而不是新建例項.被複製的例項就是我們所稱的原型,這個原型是可定製的。原型...
06 建立型 原型模式
package create.e.prototype 原型業務類 需要實現轉殖介面 public class dog implements cloneable public void changelegcounts public string tostring override protected ...