設計模式 單例模式 餓漢式單例和懶漢式單例

2021-08-14 04:55:32 字數 546 閱讀 6795

單例模式(singleton pattern)乙個在設計模式中比較簡單的模式,我們常說的餓漢式和懶漢式是最常舉例的兩種寫法。

如下餓漢式:

public class singleton 

//獲取例項物件

public static singleton getsingleton()

}

懶漢式:

public class singleton 

//獲取例項物件

public static singleton getsingleton()

return singleton;

}}

區別:懶漢式單例在低併發的情況下應該不會出現問題,但是系統壓力增大會有執行緒安全的問題。通常做法是在getsingleton()加上

synchronized關鍵字也可以在該方法內增加synchronized來實現。在這裡推薦使用第一種單例寫法即餓漢式單例,這種寫法不考慮執行緒安全問題,類載入的時候就產生了例項物件,後面用之取之即可。

懶漢式單例模式和餓漢式單例模式

單例模式測試類 1 package finalsingleton 23 public class test 17 餓漢式單例模式 1 package finalsingleton 2 3 餓漢式單例模式4 author likainian 5 1784186573 qq.com6 7public c...

單例設計模式(餓漢單例設計模式 懶漢單例設計模式)

1.什麼是單例 單例的意思是乙個類永遠只存在乙個物件,不能建立多個物件。2.為什麼要用單例 開發中有很多的物件我們只需要乙個,例如虛擬機器物件,任務管理器物件 物件越多越佔記憶體,有時候只需要乙個物件就可以實現業務,單例可以節省記憶體空間。3.如何實現單例 單例的實現方式有 餓漢單例設計模式 通過類...

《餓漢式單例模式》

設計要點 1 私有建構函式 2 設定本型別的靜態變數並設為私有屬性 3 提供靜態成員函式,作為獲取單例的介面 如下 class singelton static singelton signelton public static singelton getsingelton 獲取單例介面 void ...