單例模式 靜態內部類

2022-07-14 10:06:10 字數 834 閱讀 8021

1

/**2

* 單例模式-靜態內部類3*/

4public

class

singletontest0711}

1213

/**14

* 靜態內部類實現方式

15*/

16class

singleton

2324

/**25

* 2.寫乙個靜態內部類,直接返回singleton

26*/

27private

static

class

singletoninstance

3031

/**32

* 3.提供乙個靜態的公有方法,

33* 直接返回singletoninstance.instance

34*/

35public

static

singleton getinstance()

38 }

靜態內部類

優缺點說明:

1) 這種方式採用了類裝載的機制來保證初始化例項式只有乙個執行緒。

2 )靜態內部類方式在singleton類被裝載時並不會立即例項化,而是在需要例項化時,呼叫getinstance方法,才會裝載singletoninstance類,從而完成singleton的例項化。

3) 類的靜態屬性只會在第一次載入類的時候初始化,所以在這裡,jvm幫助我們保證了執行緒的安全性,在類進行初始化時,別的執行緒時無法進入的。

4) 優點: 避免了執行緒不安全,利用靜態內部類特點實現延遲載入,效率高。

5) 結論:推薦使用

單例模式 靜態內部類

靜態內部類是乙個很好的實現單例的方式 看 package cn.liz.syn public class staticinner 私有的靜態內部類 private static class inner 公共的 獲取例項的方法 public static staticinner getinstance...

Java靜態內部類單例模式

singleton是眾多設計模式中最容易理解的一種,也是眾多設計模式中較為重要的一種設計模式。singleton模式實現的重點在於將建構函式私有化 private 並通過提供靜態公有函式 public synchronized static getinstance 來獲取定義在類中的靜態私有成員 p...

靜態內部類實現單例模式

new b.c b b new b b.c c b.new c public class singleton public synchronized static singleton getinstance return instance public static singleton getins...