建立型——原型模式(prototype)
中國的四大名著之一——《西遊記》中的孫悟空會七十二變,孫悟空經常和妖怪打打鬧鬧,有時候他想捉弄一下妖怪,變出來n個自己,這時候孫悟空都是一樣的,他非常的聰明,知道變成來的自己都是一模一樣的沒有差別,如果這個時候孫悟空變出來的各模各樣,那妖怪不久一下認出自己了嗎?今天講解的原型模式也是如此!接下來給大家進行詳細的講解咯。
定義:原型模式(prototype)用原型例項指定建立物件的種類,並且通過拷貝這些原型建立新的物件。
(1)prototype(抽象原型類):宣告轉殖方法的介面,是所有具體原型類的公共父類,它可是抽象類也可以是介面,甚至可以是具體實現類。
(2)concreteprototype(具體原型類):它實現抽象原型類中宣告的轉殖方法,在轉殖方法中返回自己的乙個轉殖物件。
(3)client(客戶端):在客戶類中,讓乙個原型物件轉殖自身從而建立乙個新的物件。
在這裡我們要求職面試要用多分簡歷該怎麼弄呢?**實現
class resume : icloneable //物件複製介面icloneable
//個人資訊
public void setpersonalinfo(string ***, string age)
//個人工作經歷
public void setworkexperience(string timearea, string company)
//顯示內容
public void display()
", name, ***, age);
console.writeline("工作經歷:", timearea, company);//實現介面的方法,用來轉殖物件
}public object clone()
}
客戶端**
class program
淺複製與深複製
淺複製:被複製物件的所有變數都含有與原來的物件相同的值,而所有的對其他物件的引用都仍然指向原來的物件。
深複製:把引用物件的變數指向複製過的新物件,而不是原有的被引用的物件。
Java 設計模式之原型模式 Prototype
模式名原型模式prototype 定義原型模式是建立型模式 的一種,其特點在於通過 複製 乙個已經存在的例項 來返回新的例項,而不是新建例項。被複製的例項就是我們所稱的 原型 這個原型是可定製的。原型模式多用於建立複雜的或者耗時的例項,因為這種情況下,複製乙個已經存在的例項使程式執行更高效 或者建立...
設計模式學習系列6 原型模式(prototype)
原型模式 prototype 用原型例項指定建立物件的種類,並且通過拷貝這些原型建立新的物件。允許乙個物件再建立另外乙個新物件的時候根本無需知道任何建立細節,只需要請求圓形物件的copy函式皆可。1原型模式構成 客戶 client 角色 客戶類提出建立物件的請求。抽象原型 prototype 角色 ...
設計模式 原型模式
1.首先分析原型模式的由來 一般來說,建立乙個物件可以由以下方法 知道物件的具體型別,直接用new生成。不知道型號,知道相應的需求,可以使用工廠方法模式。根據乙個已有的物件來複製為乙個新的物件,可以使用原型模式。2.原型模式可以簡單理解為拷貝原型物件得到新的物件。想象乙個配鑰匙的小店,給店主乙個原有...