我的設計模式 單例(Singleton)

2021-07-24 19:50:19 字數 533 閱讀 1707

單例模式是最常見的設計模式,比較簡單,就是保證在jvm內,乙個物件只有乙個例項存在。比如:spring bean預設模式就是單例。

一般按照物件例項建立的時機,單例又分為懶漢模式和餓漢模式:

懶漢模式在類載入的時候不建立物件例項,在實際使用中判斷物件例項是否存在,如果存在則直接返回;如果不存在,則new出物件例項再返回;

該模式有3個關鍵點:

1、建構函式私有;

2、靜態獲取物件例項的方法;

3、保證執行緒安全的生成物件例項的方法或**塊;

由於在該模式下,類載入時不建立物件例項,故大物件或物件例項太多的場景下可以考慮使用該模式進行處理;

餓漢模式是在類載入的時候就建立了物件例項,在實際使用中直接將類載入時建立的物件例項返回;

該模式下有3個關鍵點:

1、私有建構函式;

2、靜態獲取物件例項的方法;

3、初始化物件例項;

由於在該模式下是在類載入的時候就建立了物件例項,寫法簡單明瞭,也沒有執行緒問題,所以該模式應用的比較多,特別適合那種物件建立複雜且耗時的場景;

Java設計模式之單例模式(Singleton)

前言 在總結okhttp的時候,為了管理網路請求使用到了單例模式,晚上實在沒啥狀態了,靜下心來學習總結一下使用頻率最高的設計模式單例模式。單例模式 單例模式確保某個類只有乙個例項,而且自行例項化並向整個系統提供這個例項。單例特點 單例分類 1 懶漢單例 1 非執行緒安全實現 public class...

設計模式 建立型模式 單例模式 Singleton

4種單例模式 單執行緒單例 類class single private static single sin null public static single createinstance return sin 呼叫 console.writeline 單執行緒單例模式 single sin sin...

大話設計模式二十一 單例模式(Singleton)

一.單例模式定義 保證乙個類僅有乙個例項,並提供乙個訪問它的全域性訪問點。二.結構和說明 singleton負責建立singleton類自己的唯一例項,並提供乙個getinstance方法,讓外部來訪問這個類的唯一例項。三.呼叫示例圖 實現 四.控制例項個數 簡單演示如何擴充套件單例模式,控制例項數...