8 原型模式

2021-09-13 23:40:44 字數 1343 閱讀 5404

·prototype· 模式是一種物件建立型模式,它採取複製原型物件的方法來建立物件的例項。使用 ·prototype· 模式建立的例項,具有與原型一樣的資料。

轉殖

原型模式是乙個建立型的模式。原型二字表明了改模式應該有乙個樣板例項,使用者從這個樣板物件中複製乙個內部屬性一致的物件,這個過程也就是我們稱的「轉殖」。被複製的例項就是我們所稱的「原型」,這個原型是可定製的。原型模式多用於建立複雜的或者構造耗時的例項,因為這種情況下,複製乙個已經存在的例項可使程式執行更高效。

由原型物件自身建立目標物件。也就是說,物件建立這一動作發自原型物件本身。

目標物件是原型物件的乙個轉殖。也就是說,通過 ·prototype· 模式建立的物件,不僅僅與原型物件具有相同的結構,還與原型物件具有相同的值。

根據物件轉殖深度層次的不同,有淺度轉殖與深度轉殖。

spring框架中的多例就是使用原型。

原型模式主要用於物件的複製,它的核心是就是類圖中的原型類prototype

prototype類需要具備以下兩個條件:

/*

* 書本型別,扮演的是concreteprototype角色,而cloneable扮演prototype角色

*/public

class

book

implements

cloneable

/** * 重寫拷貝方法

*/@override

protected book clone()

catch

(clonenotsupportedexception e)

return null;

}public arraylist

getimage()

public

void

addimage

(string img)

public string gettitle()

public

void

settitle

(string title)

/** * 列印內容

*/public

void

showbook()

system.out.

println

("----------------------end----------------------");

}}

public

class

client

}

建立型模式 原型模式

使用原型例項指定建立物件的種類,並且通過轉殖這些原型建立新的物件 原理是將乙個原型物件傳給要發動建立的物件,該物件通過請求原型物件轉殖自己來建立過程 轉殖方法 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 原型模式 用原...