執行緒安全的懶漢式單例設計模式

2022-08-26 04:24:10 字數 595 閱讀 3742

首先回顧一下單利設計模式:

單利設計模式是通過某種方式使某個類只能建立乙個物件例項供外界使用。

單利設計模式分為懶漢式和餓漢式:

餓漢式是執行緒安全的:

1

//餓漢式單利設計模式:

2class

single

5public

static

single getinstance()

8 }

餓漢式實現執行緒安全,可以通過給獲取例項的方法新增同步或者新增同步**塊,

但是這樣會損失時間效率,使每一次呼叫都會判斷是否擁有鎖,那麼可以通過雙重判空和同步**塊的方法來實現

執行緒安全,從而也提高了效率

關於執行緒鎖可以檢視:執行緒鎖詳解

1

//執行緒安全的懶漢式單例設計模式

2public

class

singledemo

6public

static

singledemo getinstance() 12}

13}14return

singledemo;15}

16 }

java設計模式 單例模式 執行緒安全的懶漢式

設計模式是一套被反覆使用 多數人知曉的經過分類編目的 設計經驗的總結。使用設計模式是為了可重用 讓 更容易被他人理解,保證 可靠性。在開發過程中,有些物件,我們只需要乙個,比如 配置檔案 工具類 執行緒池 快取 日誌物件等。這些物件如果被創造出了多個例項,就會導致許多問題,例如占用過多資源,讀寫檔案...

懶漢式單例設計模式

懶漢式單例設計模式 特點 什麼時候用,什麼時候開闢空間.缺點 多執行緒模式下,會出現問題,達不到單例模式的效果 步驟 1.構造方法私有化 2.定義乙個私有的.靜態的.類的成員變數,但不為其賦初始值 設定初始值為null 3.提供乙個名稱為getinstance 的公共的.靜態的方法,在方法中先判斷步...

單例設計模式(懶漢式)

版本 v1.0 public class study 6 10 物件是方法被呼叫時,才初始化,也叫做物件的延時載入。稱為 懶漢式 single類進記憶體,物件還沒有存在,只有呼叫了getinstance方法時,才建立物件 開發一般用餓漢式 如果乙個人呼叫方法沒有問題,如果多個人一起呼叫就會出問題,就...