原型設計模式:
顧名思義,該模式的思想就是將乙個物件作為原型,對其進行複製、轉殖,產生乙個和原物件類似的新物件
設計思路:
第一步:建立乙個類prototypemode,實現cloneable介面
第二步:在prototypemode中定義shallowclone方法( 淺複製物件實現)和deepclone方法(深複製實現),方法返回值型別為public object。
淺複製和深複製說明:
淺複製:將乙個物件複製後,基本資料型別的變數都會重新建立,而引用型別,指向的還是原物件所指向的。
深複製:將乙個物件複製後,不論是基本資料型別還有引用型別,都是重新建立的。
總之簡單來說,就是深複製進行了完全徹底的複製,而淺複製不徹底。
具體編碼實現:
建立乙個類prototypemode,實現cloneable介面,定義shallowclone方法( 淺複製物件實現)和deepclone方法(深複製實現)
/*** 建立乙個類prototypemode,實現cloneable介面,採用淺複製和深複製實現物件的複製,
* 在prototypemode中定義shallowclone方法( 淺複製物件實現)和deepclone方法(深複製實現),方法返回值型別為public
* object。
* *
* @author zdliu
* */
public class prototypemode implements cloneable
/*** 深複製
* * @return 通過複製當前物件產生的新物件
* @throws ioexception
* @throws classnotfoundexception
*/public object deepclone() throws ioexception, classnotfoundexception
}
java設計模式之原型模式
定義 原型模式就是用原型例項指定建立物件的種類,並且通過複製這些原型建立新的物件。在應用程式中,有些物件比較複雜,其建立過程過於複雜,而且我們又需要頻繁的利用該物件,如果這個時候我們按照常規思維new該物件,那麼務必會造成資源浪費,這個時候我們就希望可以利用乙個已有的物件來不斷對他進行複製就好了,這...
Java設計模式之原型模式
作為物件的建立模式,與單例模式形成對比,用原型例項指定建立物件的種類,並且通過拷貝這些原型建立新的物件。原型模式要求物件實現乙個可以 轉殖 自身的介面,這樣就可以通過複製乙個例項物件本身來建立乙個新的例項。這樣一來,通過原型例項建立新的物件,就不再需要關心這個例項本身的型別,只要實現了轉殖自身的方法...
設計模式之原型模式 java
原型模式 prototype 是一種建立型設計模式,原型模式允許乙個物件再建立另外乙個可定製的物件,根本無需知道任何如何建立的細節。工作原理是 通過將乙個原型物件傳給那個要發動建立的物件,這個要發動建立的物件通過請求原型物件拷貝它們自己來實施建立。原型類prototype宣告乙個轉殖方法,由具體原型...