原型模式 Prototype Pattern

2021-09-27 18:58:20 字數 951 閱讀 3299

1.原型模式(prototype pattern):用原型例項指定建立物件的種類,並通過拷貝這些原型建立新的物件

2.型別:物件建立型模式

3.類圖

4.各部分說明

prototype,抽象原型類

宣告轉殖方法的介面。

是所有具體原型類的公共父類。

可以是抽象類也可以是介面,甚至還可以是具體實現類。

concreteprototype,具體原型類

prototype的具體原型類。

實現在抽象原型類中宣告的轉殖方法,在轉殖方法中返回自己的乙個轉殖物件。

client,客戶類

通過呼叫該物件的轉殖方法即可讓乙個原型物件轉殖自身從而建立乙個新的物件,得到多個相同的物件。

5.實現

package 原型模式;

public

class

prototypepattern}}

inte***ce

prototype

class

concreteprototype

implements

prototype

,cloneable

catch

(exception e)

return prototype;

}public

void

show()

"+this

.tostring()

);}}

6.優點

效能優良。原型模式是在記憶體二進位製流的拷貝,要比直接new乙個物件效能好很多,特別是要在乙個迴圈體內產生大量的物件時,原型模式可以更好地體現其優點。

逃避建構函式的約束,拷貝時建構函式不會被執行

建立型模式 原型模式

使用原型例項指定建立物件的種類,並且通過轉殖這些原型建立新的物件 原理是將乙個原型物件傳給要發動建立的物件,該物件通過請求原型物件轉殖自己來建立過程 轉殖方法 public prototype clone jdk中為我們提供了轉殖的方法clone 從object繼承下來,乙個物件要實現轉殖,需要實現...

建立型模式 原型模式

原型 prototype 模式主要用於建立物件的轉殖,通常其最簡單的形式就是採用自定 clone 函式並 傳入物件引數以返回此物件的乙個副本,這在 python 實作上可使用內定 copy.cop y 或 copy.deepcopy 函式來達到此目的。當已有乙個物件但對此物件的某些部分會被變更卻又想...

原型模式 建立型模式

文章首發個人部落格 如果我們有乙個類 sheep 它裡面有兩個屬性,名稱 name 年齡 age 現在我們有乙個它的例項 s1 我們需要按照這個例項的屬性再去建立兩個物件。1 sheep data public class sheep 2 main public class main 原型模式 用原...