【簡單工廠】
簡單工廠,就是用乙個單獨的類來創造例項的過程。
簡單工廠模式的最大優點在於工廠類中包含了必要的邏輯判斷,根據客戶端和選擇條件例項化相關的類,對於客戶端來說,去除了與具體產品的依賴。
//運算簡單工廠類
public class operationfactory
return oper;
}}
【工廠方法】
工廠方法是定義乙個用於建立物件的介面,讓子類決定例項化哪乙個類。工廠方法使乙個類的例項化延遲到其子類中。
工廠方法是把簡單工廠的內部邏輯判斷移到客戶端**執行,增加功能是,就不用修改工廠類,而是直接修改客戶端就可以了。
//工廠介面
inte***ce ifactory
//加法類工廠
class addfactory:ifactory
}//減法類工廠
class subfactory:ifactory
}//乘法類工廠
class mulfactory : ifactory
}//除法類工廠
class divfactory : ifactory
}
【vs】
簡單工廠和工廠方法都是集中封裝了物件的建立,使得更換物件時,不需要做太大的改動,降低了客戶端和產品物件之間的耦合。
工廠方法克服了簡單工廠違背開放——封閉原則的缺點,又保持了封裝物件建立過程的優點。工廠方法是簡單工廠的進一步抽象和推廣。
設計模式 工廠方法模式 VS簡單工廠模式
定義 簡單工廠模式 簡單工廠 工廠方法模式 定義乙個用於建立物件的介面,讓子類決定例項化哪乙個類。工廠方法是乙個類的例項化延遲到其子類。個人理解 簡單工廠 根據客戶端的選擇進行動態的例項化物件,也就是根據使用者的需求來例項化具體的物件。工廠方法 定義乙個用來建立物件的工廠介面,然後讓具體的工廠子類來...
工廠方法模式VS簡單工廠
通過聯絡實際,我們利用乙個學雷鋒做好事的例子,來體會工廠方法模式和簡單工廠的區別與聯絡。1 寫乙個雷鋒類,學生繼承於雷鋒,通過例項化多個物件去完成洗衣 打掃等方法。2 但是學生都是短期的,如若我們需要增加乙個長時間為老人服務的團體 社群志願者類,同樣繼承於雷鋒。再寫出簡單工廠類,運用多型,需要社群志...
簡單工廠模式VS工廠方法模式
這兩天在看 大話設計模式 這本書很有意思,容易讓人理解,但是看久了,設計模式種類看多了,也會容易混,容易記不清楚,所以我們應該過一段時間停下腳步,總結一下。幫助我們理解,記憶。常常駐足進行總結,顆粒歸倉才是我們的收穫。最近看到了簡單工廠模式和工廠方法模式,從名字上看這麼的相似,越相似月不容易找到他們...