Java設計模式 單例模式

2021-09-12 15:14:08 字數 1083 閱讀 1479

一、單例模式定義:

單例模式確保某個類只有乙個例項,而且自行例項化並向整個系統提供這個例項。在計算機系統中,執行緒池、快取、日誌物件、對話方塊、印表機、顯示卡的驅動程式物件常被設計成單例。這些應用都或多或少具有資源管理器的功能。比如說:現在就一台印表機,好多人共用,以避免乙個列印狀態同時被兩個請求同時呼叫,就需要單例思想去設計。

二、單例模式特點:

三, 例項(列舉三種)

1.懶漢模式

懶漢模式,如果很少用這個資源static singleton載入的例項也是浪費資源

public  class  singleton 

private static singleton single = new singleton();

// 1.懶漢模式,如果很少用這個資源static singleton載入也是浪費資源

// 靜態方法

public static singleton getinstance()

}

2.餓漢模式(執行緒同步)

餓漢模式(執行緒同步),如果資源訪問量比較大,執行緒同步消耗資源也比較大

private  singleton() {}

//1.餓漢模式(執行緒同步),如果資源訪問量比較大,執行緒同步消耗資源比較大

private static singleton single = null;

// 靜態方法

public static synchronized singleton getinstance()

return single;

}

3.餓漢模式(雙重檢查)

雙重檢查,避免了每次獲取例項的同步加鎖浪費資源的問題

private  singleton() {}

private static singleton single = null;

// 雙重檢查,避免了每次獲取例項的同步加鎖浪費資源的問題

public static singleton getinstance() }}

return single;

}

Java設計模式 單例模式

單例模式 singleton 顧名思義,就是乙個類只有乙個例項。作為物件的建立模式,單例模式確保某乙個類只有乙個例項,而且自行例項化並向整個系統提供這個例項。這個類稱為單例類。顯然單例模式的要點有三個 一是某個類只能有乙個例項 二是它必須自行建立這個例項 三是它必須自行向整個系統提供這個例項。從具體...

java設計模式 單例模式

這個模式是很有意思,而且比較簡單,但是我還是要說因為它使用的是如此的廣泛,如此的有人緣,單例就是單 一 獨苗的意思,那什麼是獨乙份呢?你的思維是獨乙份,除此之外還有什麼不能山寨的呢?我們舉個比較難複製的物件 皇帝中國的歷史上很少出現兩個皇帝並存的時期,是有,但不多,那我們就認為皇帝是個單例模式,在這...

java設計模式 單例模式

單例模式介紹 單例模式分 懶漢式單例 餓漢式單例。單例模式有一下特點 1 單例類只能有乙個例項。2 單例類必須自己自己建立自己的唯一例項。3 單例類必須給所有其他物件提供這一例項。單例模式確保某個類只有乙個例項,而且自行例項化並向整個系統提供這個例項。單例有併發問題,只有乙個例項,多個執行緒就可能同...