JAVA單例模式

2021-07-23 01:57:48 字數 975 閱讀 8828

一:單例模式

單例模式主要有四種實現方式

1:懶漢式

package test;

public

class

singleton ;

// 懶漢式 執行緒不安全

public

static singleton getsingleton()

return singleton;

}// 懶漢式 執行緒安全(但是每次訪問)getsingleton2都會在類上加鎖,效率非常低

public

static

synchronized singleton getsingleton2()

return singleton;

}// 懶漢式 執行緒安全 先判斷一次 如果為空 在類上加鎖,然後再裡面的判斷是有幾個執行緒進入

// 了第乙個判斷,但是只能走乙個,走的這乙個進行判斷為空就建立,然後後面進入第乙個空判斷的執行緒

// 再判斷就是存在的了。

public

static singleton getsingleton3() }}

return singleton;

}// 靜態內部類

靜態內部類只在類第一次載入是被載入,所以是執行緒安全的。

private

singleton(){}

private

static

class

lazyclass

public

static

final singleton getsingle_ton()

//惡漢載入

private

static

final singleton ton = new singleton();

private

static singleton getsingleton4()

}

java單例模式

第一種方法 public class singleton private static singleton singleton new singleton public static singleton getinstance 第二種方法 public class singleton private...

Java 單例模式

單例模式特點 1 單例類只能有乙個例項。2 單例類必須自己自己建立自己的唯一例項。3 單例類必須給所有其他物件提供這一例項。一 餓漢式單例 基於classloder機制避免了多執行緒的同步問題,使用較多 public class singleton 這裡提供了乙個供外部訪問本class的靜態方法,可...

Java單例模式

單例模式的意圖是為了確保乙個類有且僅有乙個例項,並為它提供乙個全域性訪問點。單例模式通過隱藏建構函式,提供物件建立的唯一入口點,從而將類的職責集中在類的單個例項中。design patterns一書中把單例模式歸類為 建立型 模式,意圖是在表明單例物件承擔了其他物件所要依賴的職責。單例模式的優點 在...