23種設計模式之原型模式(Prototype)

2022-02-20 07:25:06 字數 549 閱讀 9471

在系統開發過程中,有時候有些物件需要被頻繁建立,原型模式通過給出乙個原型物件來指明所要建立的物件的型別,然後通過複製這個原型物件的辦法,建立出更多同型別的物件。原型模式是一種物件建立型模式,用原型例項制定建立物件的種類,並且通過複製這些原型建立新的物件。原型模式又可分為兩種:淺轉殖和深轉殖。淺轉殖僅僅複製所考慮的物件,而不複製它所引用的物件,也就是其中的成員物件並不複製;深轉殖除了物件本身被複製外,物件包含的引用也被複製,即成員物件也被複製。

優點:1)可以在執行時新增或刪除產品。

2)通過改變值指定新物件。

3)通過改變結構指定新物件。

4)減少子類的生成和使用。

5)可以用類動態地配置應用程式。

使用場景:

1)在執行時,指定需要例項化的類,例如動態載入。

2)避免構建於產品的類層次結構相似的工廠類層次結構。

3)當類的例項是僅有的一些不同狀態組合之一的時候。

prototype 模式

23種設計模式 原型模式

在軟體系統中,經常面臨著 某些結構複雜的物件 建立工作 由於需求的變化,需要建立的物件的具體型別經常變化,但是它們卻有比較穩定一致的介面。如何應對這種變化?如何向客戶程式 使用這些物件的程式 隔離出 這些易變物件,從而使得 依賴這些易變物件的客戶程式 不隨著需求改變而改變?實現了乙個原型介面,該介面...

了解23種設計模式之原型模式

一,什麼是原型模式。prototype 模式 是一種物件建立型模式,它採取複製原型物件的方法來建立物件的例項。使用prototype模式建立的例項,具有與原型一樣的資料。二,原型模式的特點。由原型物件自身建立目標物件,通過實現介面 cloneable 目標物件是原型物件的乙個轉殖,不僅僅是具有相同的...

23種設計模式 (7)原型模式

定義 1不通過new 關鍵字來產生乙個物件,而是通過物件複製 2 用原型例項指定建立物件的中了你,並且通過拷貝這些原型建立新的物件 public class prototypeclass implements cloneable catch clonenotsupportedexception e ...