設計模式 單例模式(列舉,強烈推薦)

2021-10-01 21:05:55 字數 842 閱讀 8194

通過列舉實現單例模式

最佳的單例實現模式就是列舉模式。利用列舉的特性,讓jvm來幫我們保證執行緒安全和單一例項的問題。除此之外,寫法還特別簡單。

還可以規避可能還存在反射攻擊或者反序列化攻擊,完全保證單例模式

**示例和注釋:

/**

* 單例模式:列舉方式

* 1.建乙個列舉類

*/public

class

singletonenumdemo};

for(int i=

1;i<=

10;i++)}

}//列舉類

enum singletontest

}

列印結果:

由此可見保證了執行緒同步和唯一例項

列舉類可以這樣解釋:

它自己預設實現了構造器私有化

翻譯成類相當於單例模式(餓漢式):

如果從這種角度去看,列舉的用法就不難理解了,也就是列舉類不給外界例項化的機會,只能它自己例項化,而乙個列舉類的所有例項就只有列舉前面分號前的那幾個(單例模式下,這裡只有乙個,就是instance),其他地方不允許建立。

單例設計模式 列舉

設計模式 是一套被反覆使用 多數人知曉的 經過分類的 設計經驗的總結 套路 模式 前人已經經過大量測試得出的設計模式 使用設計模式的好處 提高 的可重用性與可靠性。單例設計模式 單個例項 單個物件 意味著只能建立乙個物件,就好電腦的任務管理器,只能有乙個視窗。單例設計模式 私有構造方法 對外提供乙個...

單例設計模式推薦

單例模式主要是為了避免因為建立了多個例項造成資源的浪費,且多個例項由於多次呼叫容易導致結果出現錯誤,而使用單例模式能夠保證整個應用中有且只有乙個例項。從其名字中我們就可以看出所謂單例,就是單個例項也就是說它可以解決的問題是 可以保證乙個類在記憶體中的物件的唯一性,在一些常用的工具類 執行緒池 快取,...

強烈推薦 創業起步 八種贏利模式

8種創業贏利模式 怎樣賺到錢?8種最有效的創業贏利模式之一 從起點出發,受盡苦難周折,卻又回到起點。這是很多創業企業面臨的最大困擾。是什麼原因導致大量的創業企業甚至連進入利潤區的大門都找不到?科學投資 歷時數月,將多年建立的 科學投資 創業企業案例庫中的數百家企業進行統計,得到了這樣一組資料 在創業...