例如乙個基類pet有許多個子類,聲稱這個體系中的隨機物件,當這個體系不斷有新子類增加的時候,因為該繼承體系中已經存在了常規的基礎,所以就有可能出現問題
考慮一點, 為每個子類增加靜態初始化器,但是問題是:靜態初始化器只能在類首先被載入的時候才能被呼叫,而生成器在其列表中如果沒有這個類,他就永遠不能被呼叫
所以我們才用工廠方法,首先有乙個factory介面,其中有乙個create方法,然後pet由createrandom方法隨機生成子類物件,每個子類物件中都有乙個內部factory類,用來生成自身的物件
class aa extends part}}
然後再main方法中呼叫pet的createrandom方法
工廠模式理解
工廠模式是一種建立型的設計模式,所謂建立型設計模式,不是簡單的使用new方法 例項化物件,建立物件時在 由誰?建立什麼?何時?等方面,提高了設計的靈活性。比如,普通工廠模式 對實現同一介面的類進行例項建立。需求 定義乙個生產龍蝦的工廠,通過使用這個工廠能烹飪各種龍蝦。思路 定義乙個工廠類,去建立其他...
設計模式 工廠模式理解
工廠模式在建立物件時不會對客戶端暴露建立邏輯,並且是通過使用乙個共同的介面來指向新建立的物件。在物件導向設計中工廠模式是程式設計的首先模式。為了深入理解這個概念,首先講一下 工廠 的概念。工廠是可以大量重複生產相同產品的場所。對於工廠來講,生產一件產品和生產一萬件產品在技術和管理層面上不應該有本質差...
簡單工廠模式理解
首先需要乙個介面 pu u 需要多個實現類 pub 我是乙個m publ u 我是乙個 o 建立工廠類實現 pu u man 工廠方法模式 也叫工廠模式,屬於類建立型模式,工廠父類 介面 負責定義產品物件的公共介面,而子類工廠則負責建立具體的產品物件。目的 是為了把產品的例項化操作延遲到子類工廠中完...