要點:
案例詳解:
首先,我們還是建立乙個 car 的介面,並使用具體的車型實現 car 介面。然後,為了實現 ocp(開閉原則:open-closed principe),我們在建立工廠類時,首先建立乙個工廠介面 ca***ctory:
public
inte***ce
ca***ctory
方法很簡單,就是乙個造車的函式。然後其他的具體的工廠的實現類實現該介面。當我們需要新增新的工廠類時,與簡單方法不同,我們不需要直接對工廠進行修改,而是建立乙個實體類實現 car 介面,然後再建立乙個工廠類實現工廠介面即可。
為了能夠造賓士,我們先獲取賓士的設計圖:
public
class
benzi
implements
car}
然後再將設計圖給工廠,每次需要賓士車直接從工廠拿貨即可:
public
class
benzifactory
implements
ca***ctory
}
**複雜度
客戶端程式設計難度
管理上的難度
根據設計理論建議:工廠方法模式。但實際上,我們一般使用簡單工廠模式。
設計模式2 工廠模式
定義 定義乙個用於建立物件的介面,讓子類決定例項化哪乙個類,工廠方法使乙個類的例項化延遲到其子類。型別 建立型模式 類圖 工廠方法模式 inte ce iproduct class product implements iproduct inte ce ifactory class factory ...
設計模式2 工廠模式
工廠模式分為簡單工廠模式 工廠方法模式 抽象工廠模式。下面將依次介紹各個工廠模式 首先說說簡單工廠模式,我用現實中的汽車工廠舉例子,首先有個汽車類的介面叫做car,裡面有個開車的方法叫做drive 然後有個吉利車的類叫做jili,實現了car的介面,還有個奇瑞車的類叫做qirui,也實現了car的介...
設計模式2 工廠模式
工廠模式實現了建立者和呼叫者的分離 工廠模式詳細分類 簡單工廠模式 用來生產同一等級結構中的任意產品 對於增加新的產品,需要覆蓋已有 工廠方法模式 用來生產統一結果中的固定產品 支援增加任意產品 抽象工廠模式 圍繞乙個超級工廠建立其他工廠。該工廠又稱為其他工廠的工廠 工廠模式核心本質 例項化物件不適...