簡單工廠模式又稱為靜態方法工廠模式,是由乙個工廠物件決定建立哪乙個產品類的例項。
客戶端需要建立物件、隱藏物件的建立過程,且目標物件型別數量不多的情況下,可以考慮使用簡單工廠模式。
具體產品類,實現了product介面。
工廠類,通過靜態工廠方法factory來建立物件。
下面以乙個簡單的示例來說明進一步理解上述的幾個角色。 蘋果公司的iphone系列產品是自從上市以來受到大家的普遍歡迎,但是對於程式設計師來說,建立乙個iphone產品物件的過程是複雜的,而普通的客戶程式並不需要知道這個複雜的建立過程。客戶程式只需要呼叫某個建立方法,就希望得到他想要的物件。如果產品型別不多,我們可以通過簡單工廠方法模式來實現產品建立過程的封裝。
使用例項package com.dp.example.******factory;
/** * iphone產品類, 對應product角色
* @author mr******
* */
public inte***ce iphone
package com.dp.example.******factory;
/** * iphone5s 類,對應concreteproduct角色
* * @author mr******
* */
public class iphone4s implements iphone
@override
public void sendmessage()
@override
public void surftheinternet()
}package com.dp.example.******factory;
/** * iphone5s 類,對應concreteproduct角色
* * @author mr******
* */
public class iphone5s implements iphone
@override
public void sendmessage()
@override
public void surftheinternet()
}package com.dp.example.******factory;
/** * 工廠類
* * @author mr******
* */
public final class iphonefactory
iphone iphone = null;
if (type.equals("5s")) else if (type.equals("4s"))
return iphone;
}}
public static void main(string args)
工廠模式 簡單工廠
簡單工廠其實並不是乙個設計模式,反而比較像一種程式設計習慣。我個人的這樣總結簡單工廠 建立乙個類,封裝建立物件的 故事 現在我要開一家披薩店,叫bbk 必敗客 披薩,賣很多種披薩 芝士披薩 榴蓮披薩等等,我有乙個orderpizza string type 方法,根據客戶傳來的type來提供不同的披...
工廠模式 簡單工廠
工廠 處理建立物件的細節。目的 將例項化具體類的 從應用中抽離,或者封裝起來,可以避免干擾應用的其他部分。簡單工廠 簡單工廠其實不是乙個設計模式,反而像一種程式設計習慣。產品實現 desc 產品a public inte ce a class a1 implements a override pub...
簡單工廠模式,工廠模式,抽象工廠模式
三種模式看了一天,記錄下自己的理解 headfirst,比薩店為例 1,簡單工廠模式 乙個具體的工廠類 pizzafactory 乙個抽象的產品類pizza,可以派生出多個具體的產品類 客戶 pizzastore類 工廠類 pizzafactory類關聯產品類pizza,工廠生產出不同型別的pizz...