工廠方法模式,解決了 工廠模式中,需要增加或者刪除產品 必須修改 工廠類的弊端。
把生產產品扔給具體的工廠, 因為 每個產品都對應乙個工廠。
主要組成部分:
1 car 定義了所有產品(這裡是汽車)的共有熟悉, 汽車必須有引擎
public abstract class car
@override
public void eingee()
2.2 定義 朗逸
public class audicar extends car
@override
public void eingee()
@override
public car getcar()
4.2 上海大眾汽車廠
public class shanghaifactory implements ca***ctory
@override
public car getcar()
5 客戶
public class test
結果:北京賓士戴克 接到訂單
寶馬哦寶馬引擎
上海大眾 收到訂單
朗逸哦,是 上海大眾工廠生產
朗逸的引擎
6 如果以後 要生產 北京212 怎麼辦
沒關係, 只需要 增加乙個 產品類
public class bj20 extends car
@override
public void eingee()
再蓋乙個工廠(生產線)
public class bj212factory implements ca***ctory
@override
public car getcar() }
設計模式(2) 工廠方法模式
工廠方法模式 定義 定義乙個用於建立物件的介面,讓子類決定例項化哪乙個類。工廠方法使用乙個類的例項化延遲到子類。舉個栗子 我們要生產水果罐頭,我們應該怎麼做呢?首先,我們需要準備好原料。其次我們需要乙個罐頭工廠,往工廠裡運送不同的原料,出來的就是不同的罐頭。原料就是蘋果啊 橘子啊等等的這些類。int...
設計模式2 工廠方法模式
工廠方法模式同樣屬於類的建立型模式又被稱為多型工廠模式 工廠方法模式的意義是定義乙個建立 產品物件的工廠介面,將實際建立工作推遲到子類當中。核心工廠類不再負責產品的建立,這樣核心類成為乙個抽象工廠角色,僅負責具體工廠子類必須實現的介面,這樣進一步抽象化的好處是使得工廠方法模式可以使系統在不修改具體工...
設計模式2 工廠方法模式
工廠方法模式 定義 定義乙個用於建立物件的介面,讓子類決定例項化哪個類。工廠方法使乙個類的例項化延遲到其子類。類圖 抽象產品類product負責定義產品的共性,實現對事物最抽象的定義。creator為抽象建立類,也就是抽象工廠,具體如何建立產品類是由具體的實現工廠concretecreator完成的...