定義:為建立一組相關或互相依賴的對象提供一個接口,而且無需指定他們的具體類。
抽象工廠模式是工廠方法模式的更新版本,他用來建立一組相關或者互相依賴的對象。他與工廠方法模式的差別就在于,工廠方法模式針對的是一個産品等級結構;而抽象工廠模式則是針對的多個産品等級結構。在程式設計中,通常一個産品結構,表現為一個接口或者抽象類,也就是說,工廠方法模式提供的所有産品都是衍生自同一個接口或抽象類,而抽象工廠模式所提供的産品則是衍生自不同的接口或抽象類。
java代碼:
使用内部類的java代碼:
總結
簡單工廠模式是由一個具體的類去建立其他類的執行個體,父類是相同的,父類是具體的。
工廠方法模式是有一個抽象的父類定義公共接口,子類負責生成具體的對象,這樣做的目的是将類的執行個體化操作延遲到子類中完成。
抽象工廠模式提供一個建立一系列相關或互相依賴對象的接口,而無須指定他們具體的類。它針對的是有多個産品的等級結構。而工廠方法模式針對的是一個産品的等級結構。