設計模式 工廠模式

2021-06-02 13:40:18 字數 863 閱讀 4612

設計模式中,有簡單工廠模式,工廠方法模式和抽象工廠模式,自己老是混淆,現在總結一下。

建立乙個單獨的類創造例項,例如運算類,有加減乘除,首先定義父類operation,加減乘除繼承operation類,工廠類定義如下

class operationfactory}}

要增加新的運算時,只需要新增新的運運算元類並增加相應的switch分支即可。

工廠方法模式:

定義乙個用於建立物件的介面,讓子類決定例項化哪個類。

抽象工廠模式:

系統的產品有多餘乙個產品族,而系統只消費某乙個產品族,不會兩個產品族同時使用。如windows和linux作業系統

button-->windows/linux

text-->windows/linux

屬於同一產品族的在一起使用,所有產品以相同的介面出現。

定義方式

ifactory {

public button buttonfactory();

public text textfactory();

windowsfactory implements ifactory {

public button buttonfactory(){

return new windowbutton();

public text textfactory(){

return new windowtext();

定義button、text抽象類

inte***ce button {

//button提供的外部介面

inte***ce text{

windowbutton,linuxbutton繼承button,對應的factory只產生某一系類的產品

設計模式 工廠模式 抽象工廠模式

建立物件時不會對客戶暴露建立邏輯,並且通過使用乙個共同的介面來指向建立的物件。sept1 建立乙個公共介面,將要對外開放的方法在這裡定義。sept2 建立實現介面的類,用即實現對外開放的類的方法 sept3 建立工廠,提供乙個get方法,這個方法提供返回實現類的物件 建立選擇 sept4 使用,建立...

設計模式 工廠設計模式

用於建立物件的介面,交給子類去實現 我們舉乙個生產nokia的例子 public abstract class nokiaphone先試定義了乙個抽象類,抽象出方法poweronphone 模擬手機開機的動作 public class nokia5200 extends nokiaphone pub...

設計模式 工廠設計模式

工廠模式分為工廠方法模式和抽象工廠模式 工廠方法模式分為 普通工廠模式,就是建立乙個工廠類,對實現了同一介面的一些類進行例項的建立。多個工廠方法模式,是對普通工廠方法模式的改進,在普通工廠方法模式中,如果傳遞的字串出錯,則不能正確建立物件,而多個工廠方法模式是提供多個工廠方法,分別建立物件。靜態工廠...