工廠模式是最常用的軟體設計模式之一,工廠模式屬於建立型的設計模式。它提供了一種建立物件的最佳方式。在工廠模式中,我們在建立物件時不會對客戶端暴露建立邏輯,並且是通過使用乙個共同的介面來指向新建立的物件。意圖
工廠模式的意圖在於他的建立過程延遲到子類中去實現。工廠模式定義乙個介面,讓子類自己決定例項化哪乙個工廠類。
關鍵**
建立過程在子類中執行。
3.例子
圖形-圓形、正方形、長方形
public inte***ce shape
public class circle implements shape
}public class square implements shape
}public class rectangle implements shape
}public static void main(string args)
輸出: i draw a circle!
4. 優缺點:
優點:1、乙個呼叫者想建立乙個物件,只要知道其名稱就可以了。 2、擴充套件性高,如果想增加乙個產品,只要擴充套件乙個工廠類就可以。 3、遮蔽產品的具體實現,呼叫者只關心產品的介面。
缺點:每次增加乙個產品時,都需要增加乙個具體類和物件實現工廠,使得系統中類的個數成倍增加,在一定程度上增加了系統的複雜度,同時也增加了系統具體類的依賴。這並不是什麼好事
軟體設計模式 簡單工廠模式
軟體體系結構與設計模式相關相關知識 客戶端直接通過car類的子類實現相關功能 1 高度耦合 2 條件語句塊需要寫在客戶端內,特別難看 3 客戶程式需要知道服務類的全部的細節才能實現使用工廠模式,將選擇與初始化乙個合適的類,將功能封裝在這個類當中的專門的方法當中 強調 委託的思想,客戶不需要知道服務的...
常用軟體設計模式(三)工廠方法模式
工廠方法模式 定義乙個用於建立物件的介面,讓其子類決定例項化哪乙個工廠類,工廠模式使其建立過程延遲到子類進行。優點 1 乙個呼叫者想建立乙個物件,只要知道其名稱就可以了 2 擴充套件性高,如果想增加乙個產品,只要擴充套件乙個工廠類就可以 3 遮蔽產品的具體實現,克服了簡單工廠所違背的開閉原則的缺點,...
軟體設計模式學習(六)抽象工廠模式
抽象工廠模式是常見的建造型設計模式之一,比工廠方法模式抽象程度更高。工廠方法模式中具體工廠只生產一種具體產品,但在抽象工廠模式中,具體工廠可以生產相關的一組具體產品,這樣一組產品稱為產品族,產品族中的每乙個產品分屬於某一產品繼承等級結構。有時候我們需要乙個工廠提供多個產品物件,而不是單一乙個產品物件...