工廠模式是將一些具有相同屬性或功能的類通過乙個工廠類進行管理,當需要建立乙個例項時,只需在工廠裡去獲取即可,無需了解每乙個類的具體邏輯。
1.對資料庫的操作,如果我們有乙個完善的資料庫工廠,則在編寫**時,就無需關心連線的什麼資料庫。
2.我們編寫**連線印表機時,其實就是工廠模式。
3.載入,可載入本地或網路時,可使用工廠模式。
假設我們系統連線了惠普和聯想兩台印表機,下面我們用呼叫印表機的方式講解工廠模式的實現過程。
1.建立印表機介面
public
inte***ce printer
2.建立實現具體列印功能的惠普印表機類
public
class
hpprinter
implements
printer
}
3.建立實現具體列印功能的聯想印表機類
public
class
lenovoprinter
implements
printer
}
4.建立印表機工廠類
public
class printe***ctory else
if ("lenovo".equals(type)) else
}
}
5.模式呼叫
public
class test
}
Java設計模式 五 之 工廠模式
原始碼均以jdk1.8作為參考 1.定義 定義乙個用於建立物件的介面,讓子類決定例項化哪乙個類。工廠方法使乙個類的例項化延遲到子類。2.解析 可能乍一看factory設計模式的定義有點暈,但是細想想factory的字面含義,其實也是很好理解的,所謂工廠,就是按照指定的需求生產出一些產品,factor...
設計模式 工廠模式(五)
軟體領域中的設計模式的重要性不言而喻。設計模式中運用了物件導向程式設計語言的重要特性 封裝 繼承 多型。雖然知道這些特性的定義但是並沒有做到真正的理解,這樣特性有什麼作用?用於什麼場合中等等問題,帶著疑問開始學習設計模式,主要參考 大話設計模式 和 設計模式 可復用物件導向軟體的基礎 兩本書。工廠方...
設計模式 五 工廠模式
工廠模式 定義乙個用於建立物件的介面,讓子類決定例項化哪乙個類。工廠方法使乙個類的例項化延遲到其子類,克服了簡單工廠違背開放 封閉原則的缺點,又保持了封裝物件建立過程的有點。開放 封閉原則 對於拓展是開放的,對於更改是封閉的 學生和志願者繼承雷鋒類,學生工廠和志願者工廠實現了雷鋒工廠介面,當需要改變...