提供乙個建立一系列相關或相互依賴物件的介面,而無需指定它們具體的類
相比入工廠模式而言,如果說工廠模式支援增加任意產品。
那麼抽象工廠模式增加新的產品線很容易,但是無法增加新的產品。
而簡單工廠模式和工廠模式的區別可以認為工廠模式是優化了簡單工廠模式,遵循了開閉原則
public
inte***ce company
public
class
companya
implements
company else
}@override
public computer buildcomputer(string params) else
}}
public
class
companyb
implements
company else
}@override
public computer buildcomputer(string params) else
}}
public
abstract
class computer
public
class
maccomputer
extends
computer
}
public
class
maccomputer1
extends
computer
}
public
abstract
class phone
public
class
iphone
extends
phone
}
public
class
iphone1
extends
phone
}
public
class
androcomputer
extends
computer
}
public
class
androcomputer1
extends
computer
}
public
class
androphone
extends
phone
}
public
class
androphone1
extends
phone
}
public
class test
}
23種設計模式之抽象工廠模式
定義 為建立一組相關或者是相互依賴的物件提供介面,而不需要指定它們的具體類 使用場景 乙個物件族有相同的約束時可以使用抽象工廠模式。類圖 抽象工廠模式與工廠方法模式的區別 抽象工廠模式是工廠方法模式的公升級版本,他用來建立一組相關或者相互依賴的物件。他與工廠方法模式的區別就在於,工廠方法模式針對的是...
23種設計模式之抽象工廠模式
抽象工廠模式定義 提供乙個建立一系列的相關的或者依賴的物件的介面,無需指定它們的具體實現類,具體的時間分別在子類工廠中產生。優點 隔離了具體類的生產實現,使得替換具體的工廠實現類很容易。包含模組有 1.抽象產品介面 定義產品的介面,公共的暴露方法。便於實際的產品類實現。2.具體的產品類 包含實際產品...
23種設計模式01 工廠模式之抽象工廠模式
在上篇文章23種設計模式01 工廠模式 中介紹了簡單工廠模式和工廠方法模式,但是簡單工廠模式在新增新的產品師,需要修改工廠類,違背了開閉原則 ocp原則 工廠方法模式,提供乙個抽象工廠角色,一旦要建立新的同一產品的不同型號,只需要建立乙個具體工廠角色,用於建立對應的產品,而不用修改原有的 解決了簡單...