單例模式問題詳解

2021-08-26 09:35:41 字數 961 閱讀 4268

/**

* */

package singleton;

/** * 描述:單例設計懶漢式和餓漢式單例;

* 設計模式:針對某一問題行之有效的方法

* 單例模式:保證同一類中只有乙個物件

* 單例模式的步驟:

* 1、私有化建構函式;

* 2、在本類中新建本類的物件;

* 3、提供乙個對外訪問的方法。

*@author 李齊超 *[email protected]

* 2023年8月29日 下午8:24:49

*/public

class

test01

}/**

* 餓漢式單例

* 描述:類載入的時候就例項化物件,可能會造成資源浪費。但是實際開發中,餓漢式單例應用開發多。

* */

class single

private

static single s=new single();

public

static single getinstance()

}/**

* 解決安全問題的方式是加鎖,加的鎖是本類所屬的位元組碼物件。

* 加鎖的方式有兩種,同步函式、同步**塊,但是同步函式需要每次判斷鎖的存在,會在浪費資源;

* 一般會推薦同步**塊,同步**塊也可以優化,優化的方式是雙重判斷,減少判斷的次數。

* 描述:

*@author 李齊超 *[email protected]

* 2023年8月29日 下午8:43:16

*/class single1

private

static single1 s=null;

public

static single1 getinstance()

}return s;

}}

單例模式詳解

單例模式的意思就是只有乙個例項。單例模式確保某乙個類只有乙個例項,而且自行例項化並向整個系統提供這個例項。這個類稱為單例類。1.單例模式的要點 顯然單例模式的要點有三個 一是某個類只能有乙個例項 二是它必須自行建立這個例項 三是它必須自行向整個系統提供這個例項。2.單例模式的優點 1.例項控制 si...

單例模式詳解

單例模式是設計模式中比較常用的,今天我要詳細的了解一下,並且進行一些比較 public class singleton public static singleton getinstance catch interruptedexception e 單例模式的精髓就在這,類的內部可以new inst...

單例模式 詳解

保證乙個類僅有乙個例項,並且提供乙個訪問它的全域性訪問點 在該例項不存在的情況下,可以通過乙個方法建立乙個類來實現建立類的新例項 如果例項已經存在,它會簡單返回該物件的引用 建立型模式 var singleton function return var singlea singleton.getin...