單例模式更好的寫法

2021-07-13 14:25:30 字數 758 閱讀 8895

特別說到這個問題,是因為網上很多這樣的**:

public

class singleton

public

static singleton getinstance()

return instance;

}}

這種寫法執行緒不安全,改進一下,加乙個同步鎖:

public

class singleton

public

static synchronized singleton getinstance()

return instance;

}}

public

class singleton

public

static singleton getsingleton() }}

return singleton;

}}

注意,別忘記volatile關鍵字哦,否則就是10重,100重也可能還是會出問題。

上面是用的最多的,還有一種靜態內部類寫法更推薦:

publlic class singleton 

private

static

class singletonloader

public

static singleton getinstance()

}

單例模式寫法

單例模式是最常用到的設計模式之一,熟悉設計模式的朋友對單例模式都不會陌生。一般介紹單例模式的書籍都會提到餓漢式和懶漢式這兩種實現方式。但是除了這兩種方式,本文還會介紹其他幾種實現單例的方式,讓我們來一起看看吧。單例模式是一種常用的軟體設計模式,其定義是單例物件的類只能允許乙個例項存在。許多時候整個系...

單例模式幾種寫法

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

設計模式 單例模式的寫法

目錄第三種實現方式 執行緒安全 雙重檢查 加鎖 3 靜態內部類實現單例模式 4 列舉 5 參考鏈結 單例模式的特點就是建構函式私有化,變數私有化,然後定義乙個public的方法。class singleton public static singleton getinstance 第一種實現方法 執...