單例設計模式的幾種簡單寫法。

2021-09-29 03:08:58 字數 1150 閱讀 6414

單例設計模式:其定義是單例物件的類只能允許乙個例項存在。

1,飽漢式:

優點:懶載入,節約記憶體空間。

缺點:執行緒不安全,當有多個執行緒時,乙個執行緒進入if語句,還沒來得及執行,另乙個執行緒也進去了。

結果可能會產生多個例項。

public

class

singleton

;public

static singleton forinstance()

return singleton;

}}

2飽漢式(執行緒安全);

缺點:效率低。

public

class

singleton

;public

static

synchronized singleton forinstance()

return singleton;

}}

3,餓漢式:

優點:執行緒安全,實現簡單。

缺點:類載入時就初始化了,沒有實現懶載入。

public

class

singleton

;public

static singleton forinstance()

}

4,餓漢式(靜態**塊);

public

class

singleton

private

singleton()

;public

static singleton forinstance()

}

5,飽漢式(執行緒安全);

優點: 雙重檢查**,既解決了執行緒安全問題, 又保證了效率,。

缺點:複雜。

class

singleton

public

static singleton singleton()

}}return instance;

}}

6,列舉類

**簡潔,沒有問題。

enum singleton 

}

設計模式 單例模式的幾種寫法

一 單例模式 單例模式是一種建立型的模式,指某個類採用單例模式後,在這個類被建立後,只產生乙個例項以供外部訪問,且提供乙個全域性的訪問點。單例模式在開發中具有相當大的重要性,並且 實現相對簡潔。所以其是為數不多的在面試中會被問到且要求手擼 的設計模式哦 二 幾種單例的寫法及比較 1.飽漢模式 pac...

單例模式幾種寫法

1.餓漢式 public class singleton public static singleton getinstance 2.懶漢式 public class singleton 雙層檢測鎖 public static singleton getinstance return instanc...

設計模式之單例模式的幾種寫法

經過了前面幾次的面試,我發現面試官對設計模式方面的提問頻率是非常高的,所以學習設計模式是一件刻不容緩的事情,今天我們就來說一下設計模式中的單例模式吧。設計模式並不是什麼神技,而是一套 的設計,是經驗的總結,使用設計模式是為了實現 的復用以及 解耦 關於程式設計裡面解耦的概念可以參考一下下面這篇知乎。...