1. 程式人生 > >建立型設計模式之工廠方法模式FactoryMethod

建立型設計模式之工廠方法模式FactoryMethod

2工廠方法模式<程式碼/DesignPattern20140912/src/FactoryMethod>

意圖:定義一個建立產品物件的工廠介面,將實際建立工作推遲到工廠子類中,工廠方法模式可以容許多個實的工廠類,以每一個工廠類負責每一個產品類等級.系統有多個產品類等級可以描述所有已有的產品類;

定義圖:

平行等級結構,工廠 <==> 產品

應用例項圖:

參與者:

抽象產品(Product是工廠方法模式所創立的物件的父類,或它們共同擁有的介面)

具體產品(ConcreteProduct,實現Product介面) 

抽象工廠(Creator:1宣告工廠方法,該方法返回一個Product型別的物件。Creator也可以定義一個工廠方法的預設實現,返回一個預設的ConcreteProduct物件 2 可以呼叫工廠方法以建立一個Produc物件)

具體工廠類 (ConreteCreator:重定義工廠方法以返回一個ConcreteProduc物件)

注:

1 參考書籍:Java與模式

2 參考:http://lavasoft.blog.51cto.com/62575/11458/