如果看了前兩篇文章,這個設計模式一樣很簡單,上**
/**
* 抽象工廠方法
* 在工廠方法的基礎上,每個工廠例項裡不止乙個介面方法,而是多個
* 這樣做體現了產品簇的意義,將相關的產品放在同乙個工廠裡
*/public
class
main
}public
inte***ce
icat
public
inte***ce
idog
public
class
blackcat
implements
icat
}public
class
blackdog
implements
idog
}public
class
whitecat
implements
icat
}public
class
whitedog
implements
idog
}public
inte***ce
ianimalfactory
public
class
blackanimalfactory
implements
ianimalfactory
@override
public idog createdog()
}public
class
whiteanimalfactory
implements
ianimalfactory
@override
public idog createdog()
}
用法:
工廠方法裡每個工廠就生產乙個產品,擴充套件一下,生產多個產品,這就是抽象工廠了,這裡也就是涉及了乙個產品簇的概念了。
換乙個工廠就換一整套實現,一整套實現替換的**場景太多了,仔細想想是不是這麼回事,如果想不到的慢慢想,總有想通的時候。
另外說一句,設計模式裡大量用到了介面,很多初學者看的一頭霧水,其實設計模式總歸一句話,如何使用介面,over!!!
設計模式 簡單工廠 工廠方法 抽象工廠方法模式
簡介 工廠方法模式分為 簡單工廠模式 工廠方法模式 抽象工廠方法模式 簡單工廠模式是屬於建立型模式,又叫做靜態工廠方法 static factory method 模式,但不屬於23種gof設計模式之一。簡單工廠模式是由乙個工廠物件決定建立出哪一種產品類的實 uml圖示例 public class ...
設計模式 工廠方法 抽象工廠模式
在業務邏輯中往往有需要建立物件的需求 如何將這部分邏輯封裝並且使得其能個適應於頻繁的變化呢?簡單工廠模式 將物件建立邏輯封裝隔離在簡單工廠類的方法中。簡單工廠的常見實現方式 1 簡單工廠類以及其建立物件的靜態方法 其客戶可以直接呼叫該類的靜態方法。2 簡單工廠類以及其建立物件的成員方法 其客戶 需要...
設計模式 抽象工廠方法
個人理解為抽象工廠方法是多個工廠方法,具體如下 工廠方法模式 乙個抽象產品類,可以派生出多個具體產品類。乙個抽象工廠類,可以派生出多個具體工廠類。每個具體工廠類只能建立乙個具體產品類的例項。抽象工廠模式 多個抽象產品類,每個抽象產品類可以派生出多個具體產品類。乙個抽象工廠類,可以派生出多個具體工廠類...