[英]Is the below design an abstract factory?
我有以下場景
方法采用車輛類型對象並返回以下內容
一個。 公路車輛b。 水車c。 飛行的車輛。
另一種方法從1返回對象並提供更具體的對象。 如果“道路車輛退回”,那么此方法將返回汽車,公共汽車等。
我可以說這是抽象工廠模式的一個例子嗎? 因為在步驟1中,我得到了一個可能的工廠,並且在步驟2中,它更具特定的對象。
問候
你不是先創建一個具體的工廠,所以我不認為這是抽象工廠的代表。 因此,你有一個具體的工廠方法。
在這種情況下,您有一個工廠方法。
不,你不是一個抽象工廠,它更像是一個工廠方法模式 。
Abstract Factory提供了用於創建一系列相關對象的接口,而無需顯式指定其類。
像這樣的東西就是抽象工廠
interface CarSparePartFactory{
public SparkPlug createSparkPlug();
public Wheel createWheel();
}
interface SparkPlug{
}
interface Wheel{
}
在這里,您將使用界面創建一組相關對象。
有關抽象工廠的更多信息:
事實並非如此。 抽象工廠應該自己確定要創建的對象的類型。 它不應該是客戶端發送的參數。 否則,抽象工廠的主要目的(“提供用於創建相關或依賴對象族的接口而不指定其具體類。”)不滿足。
有關詳情,請訪問http://en.wikipedia.org/wiki/Abstract_factory_pattern
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.