昨晚看了:abstract factory ,build上種。
總體說(1)抽象工廠模式:使用乙個工廠直接生產多個產品,通過繼承或者實現介面,用a= productfactory.createa();b=productfactory.crateb();、、、然後繼續進行以下操作,它產生的產品是完全定型的,可以一次獲得,然後利用抽象類的公共方法操作。
(2)生成器模式:有乙個指示器、乙個生成器,生成器生產產品,往指示器裡傳入乙個生成器應用,進行builder操作得到乙個build產品,利用builder來get到產品,即可。乙個遊戲地圖的經典例子:maze maze;
mazegame mazegame;
mazebuilderone builderone;
mazegame.builder(onebuilder);
maze = onebuilder.getmaze();
抽象工廠模式可以一次性獲得產品,生成器模式可以分多步建立產品,最後返回,可以得到更多型別的產品。
(3)factory method pattern: 定義乙個建立物件的藉口,讓子類決定例項化哪個類,將乙個類的例項化延遲到子類。
object creat(int id)
(4)prototype(原型):用原型例項指定建立物件的種類,並且通過拷貝這些原型來建立新的物件。
door makewall()prototypedoor在工廠類中的建構函式中已經初始化,是工廠類的乙個private變數!
建立型模式 原型模式
使用原型例項指定建立物件的種類,並且通過轉殖這些原型建立新的物件 原理是將乙個原型物件傳給要發動建立的物件,該物件通過請求原型物件轉殖自己來建立過程 轉殖方法 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 原型模式 用原...