工廠模式概念:
例項化物件,用工廠方法代替new操作
工行模式包括工廠方法模式和抽象工廠模式
抽象工廠模式是工廠方法模式的擴充套件
工廠模式意圖
定義乙個介面來建立物件,但是讓子類決定哪些類需要被例項化
工廠方法把例項化的工作推遲到子類中去實現
什麼情況下適合工廠模式
有一組類似的物件需要建立
在編碼的時候不能預見需要建立哪種類的例項
系統需要考慮擴充套件性,不依賴於產品實力如何被建立
工廠模式的動機
在軟體系統中經常面臨著物件的建立工作,由於需求的變化,這個物件可能隨之也會發生變化,但是它卻擁有比較穩定的介面
為此,我們需要提供一種封裝機制來隔離這個容易改變物件的變化,從而保持系統中其他依賴該物件的物件不隨著需求變化而變化
****
乙個遊戲,需要捏臉,有三種髮型,左偏右偏中間**
要實現它
第一步:建立乙個介面 ihair
public
inte***ce ihair
第二步,建立介面的三個實現類
public
class
lefthair
implements
ihair
}
public
class
righthair
implements
ihair
}
public
class
middlehair
implements
ihair
}
第三步:不用工廠模式的話,只能乙個個的建立物件,呼叫物件的方法,輸出對應的髮型
public
class test
}
第三步,使用工廠模式,建立乙個hai***ctory類,傳進hairtype就可以自動建立物件
public
class hai***ctory else
if("right".equals(hairtype))
return
new middlehair();
}}
測試類,借助工場建立物件即可
public
class test
}
java工廠模式
定義乙個用於建立物件的介面,我們需要乙個物件例項的時候就可以通過呼叫介面的方法來獲取我們想要的物件例項。首先,最簡單的 簡單工廠介面,可以返回例項 public inte ce factory 工廠實現類,返回money例項 public class moneyfactoryimpl impleme...
Java工廠模式
工廠模式理解起來並不是很難 只要耐心看看 理解它的運作機理就好了。運用時就要看個人的靈活性了。工廠是用來生產東西,但是從程式的角度講就是 用乙個工廠類來生產出你所需要的物件,這個生產出的物件可以是任意形式的 包括人,動物,水果,植物等不一定是要 機械性的東西 這是它跟現實工廠的區別之一。產品是由工廠...
java工廠模式
1.定義介面類idaouser public inte ce idaouser 2.定義工廠類,此工廠類實現了兩個不同類的呼叫。public final class daouse ctory return null 3 介面的實現,實現了介面idaouser的方法 public class daou...