java單例模式

2021-07-11 23:11:12 字數 795 閱讀 5615

1.多執行緒安全單例模式例項一(不使用同步鎖)

這種方式在

public

class singleton

public

static singleton getinstance()

}

上述**中的乙個缺點是該類載入的時候就會直接new 乙個靜態物件出來,當系統中這樣的類較多時,會使得啟動速度變慢 。現在流行的設計都是講「延遲載入」,我們可以在第一次使用的時候才初始化第乙個該類物件。所以這種適合在小系統。

2. 多執行緒安全單例模式例項二(使用同步方法)

public

class singleton

public synchronized static singleton getinstance()

return instance;

}}

由於對getinstance()方法做了同步處理,synchronized將導致效能開銷。如果getinstance()方法被多個執行緒頻繁的呼叫,將會導致程式執行效能的下降。反之,如果getinstance()方法不會被多個執行緒頻繁的呼叫,那麼這個初始化方案將能提供令人滿意的效能。

3. 多執行緒安全單例模式例項三(使用雙重同步鎖)

public

class

singleton

public

static singleton getinstance()}}

return instance;

}}

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一書中把單例模式歸類為 建立型 模式,意圖是在表明單例物件承擔了其他物件所要依賴的職責。單例模式的優點 在...