工廠模式二 工廠方法模式

2021-10-03 08:59:05 字數 748 閱讀 3159

使用者只需要關心產品對應的工廠,不需要關心建立細節。

例如貓和狗都屬於動物一類,都具有吃飯這個功能。

先定義介面ianimal 

public inte***ce ianimal
實現介面ianimal介面cat類和dog類

public class cat implements ianimal 

}

public class dog implements  ianimal 

}

新建介面ianimalfactory,由它來建立物件,但具體建立貓還是狗,是由實現此介面的類來決定

public inte***ce ianimalfactory
新建catfactory實現ianimalfactory介面來例項化cat物件

public class catfactory implements ianimalfactory 

}

新建dogfactory實現ianimalfactory介面來例項化dog物件 

public class dogfactory implements ianimalfactory 

}

新建測試類

public class mytest 

}

工廠方法模式 工廠方法模式 二

工廠方法模式是對簡單工廠的進一步抽象和封裝,需要新的類物件時不需要對既有工廠類進行修改,而是增加新的工廠類。工程類可以使用模版進一步封裝,由編譯器來生成 從而減少 編寫工作量。工廠方法的 c 實現01part產品抽象基類class animal virtual void show 0 02part產...

工廠方法模式 工廠方法模式

工廠方法模式是簡單工廠模式的公升級版,簡單工廠模式不符合設計模式的原則 即 單一職責,開閉原則 優點 職責明確,擴充套件方便 缺點 需要建立多個工廠 實現步驟 1.將工廠通用方法抽取介面 例如 ifactory 2.將產品抽取介面 例如 icar 3.實現各種產品 例如 baomacar,benti...

工廠模式之二 工廠方法模式

工廠方法模式 乙個用於建立物件的介面,讓子類決定例項化哪乙個類。工廠方法使乙個類的例項化延遲到其子類。工廠方法克服了簡單工廠違反開發 封閉原則的缺點,既保持了封裝物件建立過程的優點。工廠方法模式實現時,客戶端需要決定例項化哪乙個工廠來實現運算類,選擇判斷的問題還是存在的,也就是說工廠方法把簡單工廠的...