一:創造型模式的理解:
1.抽象工廠模式
抽象工廠模式是是相比工廠方法模式抽象層次更高。抽象工廠返回的是一組類的工廠,然後每個工廠能生產一類產品(有的書上稱之為產品族,類似可以把公司抽象成的工廠,谷歌就是這個工廠的子類,蘋果也是這個工廠的子類。谷歌有搜尋引擎,安卓,地圖等產品,蘋果有手機,ipad和mac等產品。模擬的看都是一種抽象工廠模式的例項)。
同工廠方法模式類似(工廠方法模式就是返回多個子類中的乙個),抽象工廠模式能夠返回乙個工廠,乙個工廠就能返回多個子類中的乙個。
可以說工廠模式是創造型模式的典型示例,抽象公共模式是工廠方法模式的擴充套件,允許建立更多型別的物件。
具體類包括:
抽象工廠:宣告乙個用於完成抽象產品物件建立操作的介面。
具體工廠:實現建立具體產品物件的操作。
抽象產品:宣告乙個用於一類產品物件的介面。
具體產品:定義相應的具體工廠來建立的產品物件。
客戶端:使用抽象工廠建立特定產品的工廠,生成特定的產品。
2.抽象工廠帶來的優勢:
客戶端和具體的產品類之間徹底解耦,這是抽象工廠模式最主要的好處之一。我們可以很輕鬆的新增一類產品,只需要實現這類產品的工廠和定義這類產品就行。
3.**實現:
public class part
public void setname(string name)
}... ...
public abstract class car
}... ...
public class benzcar extends car
@override
part getwheels()
@override
part getengines()
@override
part getbody()
}... ...
public class bmwcar extends car
@override
part getwheels()
@override
part getengines()
@override
part getbody()
}... ...
public static void main(string args)
設計模式 抽象工廠 建立型模式
介紹了簡單工廠與工廠方法之後,現在我們來看一下工廠三兄弟的最後乙個 抽象工廠。那什麼是抽象工廠呢?抽象工廠模式 abstract factory pattern 提供乙個建立一系列相關或相互依賴物件 的介面,而無須指定它們具體的類。抽象工廠模式又稱為kit模式,屬於物件建立型模式。說起來,抽象工廠與...
設計模式系列(建立型模式)之二 抽象工廠模式
抽象工廠模式 abstract factory pattern 是一種為訪問類提供乙個建立一組相關或相互依賴物件的介面,且訪問類無須指定所要產品的具體類就能得到同族的不同等級的產品的模式結構。抽象工廠模式是工廠方法模式的公升級版本,工廠方法模式只生產乙個等級的產品,而抽象工廠模式可生產多個等級的產品...
設計模式 建立型模式之抽象工廠模式
抽象工廠模式是工廠模式中最抽象的乙個工廠模式,引入的產品組的概念,對它的定義就是將一組相關或相互依賴的物件提供介面,而不需要具體的物件,這個定義是很抽象的。抽象工廠模式包括的角色 1.抽象工廠類 宣告一組用於建立一種產品的的方法 2.具體工廠類 繼承了抽象工廠類,建立一組具體產品的物件 3.抽象產品...