工廠方法模式是對簡單工廠模式的改進,克服了簡單工廠模式不能很好的遵循開閉原則的缺點。工廠方法模式對工廠類進行了抽象化,並為每一種對應的產品建立乙個對應的工廠類。當系統中引進了一種新的產品時,只需建立乙個工廠類繼承自工廠抽象類即可,無須對現有的系統做任何的修改。從而使系統滿足了開閉原則的要求,提高了系統的可擴充套件性。
上一節的產品類是使用介面來進行抽象化操作的,其實使用抽象類來進行抽象化操作也是一樣的。
這是抽像產品類
package com.test; public abstract class product
以下是抽象產品類的整合實現:
package com.test; public class producta extends product @override public void action2() public void myownaction() } package com.test; public class productb extends product @override public void action2() }
抽象工廠類:
package com.test; public abstract class factory
產品a對應的工廠類:
package com.test; public class factorya extends factory }
產品b對應的工廠類:
package com.test; public class factoryb extends factory }
最後就是得到產品了:
package com.test; public class test }
下一節,將對抽象工廠模式進行學習**。
Java設計模式之工廠方法模式
l 工廠方法模式概述 工廠方法模式中抽象工廠類負責定義建立物件的介面,具體物件的建立工作由繼承抽象工廠的具體類實現。l 優點 客戶端不需要在負責物件的建立,從而明確了各個類的職責,如果有新的物件增加,只需要增加乙個具體的類和具體的工廠類即可,不影響已有的 後期維護容易,增強了系統的擴充套件性 l 缺...
Java設計模式之 工廠方法模式
工廠方法模式分為三種 普通工廠模式 多個工廠方法模式 靜態工廠方法模式。1 普通工廠模式 以發郵件和簡訊的例子說明。結構如下圖所示 主要分為四個步驟 建立各例項的共同介面 建立各功能例項 建立工廠 主程式。請看如下示例 public class factorymethodmodel 建立二者的共同介...
java設計模式之工廠方法模式
工廠方法模式分為三種 1 普通工廠模式 2 多個工廠模式 3 靜態工廠模式 1 定義乙個介面類 package com.dairuijie.factory 動物介面 author drjyy public inte ce anaimal 2 定義實現介面的類 package com.dairuiji...