工廠方法模式 應用最廣:定義乙個用於建立物件的介面,讓子類決定例項化哪個類。在任何需要生成複雜物件的地方,都可以使用工廠方法模式。用new就可以完成的建立無需要使用工廠方法模式。
工廠方法四大模組:
抽象工廠角色具體工廠角色抽象產品角色具體產品角色。
這個和下乙個模式抽象工廠方法模式裡是一樣的,都有四類角色。
工廠方法的應用
結合例子來分析吧,汽車廠生產汽車吧,這個模式下假如我們的需求沒有那麼大,我們只生產國產的東風汽車。他有搭配輪胎和引擎的方法吧。
東風車廠類:
public inte***ce idongfengfactorypublic class dongfengfactory implements idongfengfactory
}東風汽車類:
public inte***ce idongfengcarpublic class dongfengcar implements idongfengcar
public void createengine()
}主類呼叫:
public static void main(string args)執行結果:
我是輪胎
我是引擎至此一輛東風車就造好了,零件搭配齊全。
總的來說。工廠方法設計還是很實用的,**系統結構清晰,將要生產的產品具體細節操作封裝起來,使用者只關心呼叫介面就是,不用擔心他汽車怎麼造的過程。
但是工廠方法模式也有不好的地方就是我們要引入新的產品,比如新增加進口汽車就要重新寫的產品類,還要引入新的介面,從而導致整體檔案多起來了。
應用最廣泛的模式 工廠方法模式
定義乙個建立物件的介面,讓子類決定例項化哪個類。當a物件需要呼叫b物件的方法時,可以使用new關鍵字來建立乙個b例項,然後呼叫b例項的方法,這種做法的壞處在於 a類的方法直接呼叫了b類的類名 這種方式也被稱為硬編碼耦合 一旦系統需要重構 需要使用c類來代替b類時,程式不得不改寫a類 如果應用中有10...
工廠方法模式 應用最廣(建立型模式02)
什麼是工廠方法模式?定義乙個用於建立物件的介面,讓子類決定例項化哪個類。在任何需要生成複雜物件的地方,都可以使用工廠方法模式。用new就可以完成的建立無需要使用工廠方法模式。工廠方法四大模組 抽象工廠角色 abstractfactory 具體工廠角色 concretefactory 抽象產品角色 a...
工廠方法模式 應用
工廠方法模式,又稱工廠模式,定義乙個建立產品物件的工廠介面,將產品物件的實際建立工作推到具體子工廠類當中。這滿足建立型模式中所要求的 建立與使用相分離 的特點。將類的例項化 具體產品的建立 延遲到工廠類的子類 具體工廠 中完成,即由子類來決定應該例項化 建立 哪乙個類。工廠方法模式的主要角色如下。抽...