設計模式 1 工廠方法模式

2021-08-28 21:10:21 字數 887 閱讀 8154

簡單工廠模式有個問題是,類的建立是需要依賴工廠類的,如果要拓展程式,那麼需要對工廠類進行修改,這個增加了風險。

工廠方法模式可以避免這種情況,方法建立乙個工廠介面和建立多個工廠類,理解如下:對了抽象方法a,b和c分別為其的兩個不同實現,現在建立工廠介面d,工廠介面d的實列類e和f分別對b和c進行實列化,則若第三方要呼叫b或c,則直接呼叫e或f就可以。與此同時,如果抽象方法a又需要增加一種新的實現方法g,則再新建乙個新的工廠介面d的例項方法f,則只會新加**,而不會改動之前的**。

例如:抽象方法a:send

public inte***ce testinte***ce
抽象方法a的實現方法b:test2.send

c:test3.send

public class test2 implements testinte***ce 

}public class test3 implements testinte***ce

}

抽象工廠方法d:produce

public inte***ce factoryinte***ce
抽象工廠方法實現e:factorytest .produce

f:factorytest2 .produce

public class factorytest implements factoryinte***ce 

}public class factorytest2 implements factoryinte***ce

}

第三方呼叫案例:

public class testmain 

}

設計模式(1) 工廠方法模式

工廠方法模式uml類圖如圖所示 說明 具體產品繼承抽象產品,具體工廠繼承抽象工廠,具體工廠依賴具體產品。具體例項 如下所示 其實是在簡單工廠模式例項 的基礎上對工廠類進行了一下抽象 抽象工廠類 public abstract class abstractfactory具體產品a工廠類 ublic c...

設計模式1 工廠方法模式

關於工廠的設計模式,我們可以列出來這三個,既然是都和工廠有關,當然就少不了他們的比較,這裡簡單說下,在比較中理解以便更好的學習。本篇著重講工廠方法模式。簡單工廠模式不屬於23種經典設計模式的一種,是乙個專門生產某個產品的類,例如 乙個鍵盤工廠,不管生產什麼牌子的鍵盤,就只能生產鍵盤,對鍵盤的邏輯操作...

設計模式 1 工廠方法模式

建立型模式可以隔離客戶程式對需要例項化型別的依賴關係,這類模式一般通過將例項化具體物件的職責委託給第三方物件的方式,使得客戶程式或者外部系統在獲得所需的具體型別例項的同時,而不必對其發生直接的引用。建立型模式包括 按照大多數設計模式書籍採用的順序,首先從工廠方法模式開始。簡單工廠模式並沒有被歸入23...