單例模式的七種寫法

2021-09-08 12:17:41 字數 1308 閱讀 8468

第一種(懶漢,執行緒不安全):

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 getinstance()

}

第四種(餓漢,變種):

private

static singleton instance = null

;

static

private

singleton (){}

public

static

singleton getinstance()

}

第五種(靜態內部類):

public

class

singleton

private

singleton (){}

public

static

final

singleton getinstance()

}

第六種(列舉):

public

enum

singleton

}

第七種(雙重校驗鎖):

public

class

singleton

public

static

singleton getsingleton() }}

return

singleton;

}}

七種單例模式的寫法

餓漢式 特點 在類載入時例項化,執行緒安全,如果沒有使用instance的話比較耗費資源 class singletondemo public static singletondemo getinstance 懶漢式 非執行緒安全 特點 使用時再例項化 class singletondemo pub...

設計模式之單例模式(及七種寫法)

乙個類有且僅有乙個例項,並且自行例項化向整個系統提供 看看下面七種實現方式 public class singleton public static singleton getinstance public class singleton public static singleton getins...

單例模式實現(七種)

單例模式確保乙個類只有乙個例項,並提供乙個全域性訪問點,實現單例模式的方法是私有化建構函式,通過getinstance 方法例項化物件,並返回這個例項 保證在jvm中只有乙個例項 優點 1 單例類只有乙個例項 2 共享資源,全域性使用 3 節省建立時間,提高效能 public class singl...