整理Effective Java書中Item 4: Enforce noninstantiability with a private constructor心得筆記
主旨
本篇在開門見山說了使用私有建構子來防止物件被實例化。
劃重點
主要概念很簡單,你在設計一個Utils class,
- 請將constructor設為private。
- 並在被實例化時(constructor被執行時)拋出錯誤。
整理Effective Java書中Item 4: Enforce noninstantiability with a private constructor心得筆記
本篇在開門見山說了使用私有建構子來防止物件被實例化。
主要概念很簡單,你在設計一個Utils class,
整理Effective Java書中Item 3: Enforce the singleton property with a private constructor or an enum type心得筆記
本篇在介紹單例模式(singleton pattern)以及相關缺失防範。
整理Effective Java書中Item 2: Consider a builder when faced with many constructor parameters心得筆記
由於靜態工廠(static factories)和建構函式(constructors)還是有它的限制的,當參數變多了就不太適合,而進而衍伸出了這篇建造者模式(builder pattern)以及相關使用說明。
整理Effective Java書中Item 1: Consider static factory methods instead of constructors心得筆記
在過去傳統我們所學要取得一個物件,多半是透過該物件所提供建構函式(constructor)new
出來,現在書中提出更具優勢的方式來取得物件。
把靜態工廠方法(static factory method)直接就字面上意思拆開來看,靜態方法(static method)開發者一般會在Utils class中設計,而看到工廠(factory)字眼就會直接聯想到要製造東西。主要傳達的概念就是透過靜態工廠方法(static factory method)來掌控創建物件而不見得是透過建構函式(constructor),透過此方法有下面幾項優點: