設計模式(四) 抽象工廠模式

2021-10-20 12:38:56 字數 310 閱讀 1879

有時候我們需要乙個工廠可以提供多個產品物件,而不是單一的產品物件。

為了更清晰地理解工廠方法模式,這裡先引入兩個概念:

產品等級結構 :即產品的繼承結構,比如乙個抽象類是電視機,其子類有海爾電視機、海信電視機、tcl電視機,則抽象電視機與具體品牌的電視機之間構成了乙個產品等級結構,抽象電視機是父類,而具體品牌的電視機是其子類。

產品族 :指由同乙個工廠生產的,位於不同產品等級結構中的一組產品,比如海爾電器工廠生產的海爾電視機、海爾電冰箱,它們位於不同的產品等級結構中。

抽象工廠模式包含角色如下:

設計模式(四) 抽象工廠模式

前面說了兩種設計模式,簡單工廠模式和工廠模式。簡單工廠模式是定義乙個工廠類,工廠類根據呼叫時傳入的引數選擇建立哪乙個類的例項。工廠模式是為每個類建立乙個工廠,而這些工廠都實現了同乙個工廠,客戶端在呼叫的時候自己選擇某個類對應的工廠去建立某個類的例項。那抽象工廠又是什麼呢?抽象工廠在工廠模式的基礎上引...

設計模式(四) 抽象工廠模式

前面介紹的工廠方法模式中考慮的是一類產品的生產,如畜牧場只養動物 電視機廠只生產電視機 計算機軟體學院只培養計算機軟體專業的學生等。同種類稱為同等級,也就是說 工廠方法模式只考慮生產同等級的產品,但是在現實生活中許多任務廠是綜合型的工廠,能生產多等級 種類 的產品,如農場裡既養動物又種植物,電器廠既...

設計模式之四 抽象工廠模式

抽象工廠模式 abstract factory pattern 是圍繞乙個超級工廠建立其他工廠。該超級工廠又稱為其他工廠的工廠。這種型別的設計模式屬於建立型模式,它提供了一種建立物件的最佳方式。在抽象工廠模式中,介面是負責建立乙個相關物件的工廠,不需要顯式指定它們的類。每個生成的工廠都能按照工廠模式...