單例設計模式(詳解)

2022-01-25 08:32:49 字數 1254 閱讀 4231

模式:模式就是解決一類問題的固定步驟

單例設計模式:保證乙個類在記憶體中只有乙個物件

舉例:多個瀏覽器向伺服器傳送請求,只建立乙個servlet物件處理相應的請求,而不是每接收乙個請求,就建立乙個servlet物件

1.餓漢單例設計模式

1.私有化建構函式

2.宣告本類的引用型別變數,並且使用該變數指向本類物件

3.提供乙個公共靜態的方法獲取本類的物件

//保證single在記憶體中只有乙個物件

public class single

//宣告本類的引用型別變數,並且使用該變數指向本類物件

private static single single = new single();

//提供乙個公共的方法獲取本類的物件

public static single getinstance()

}class test

}

執行結果:

是同乙個物件嗎?true

2.懶漢單例設計模式1.私有化建構函式2.宣告本類的引用型別變數,但不要建立物件

3.提供靜態公共的方法獲取本類的物件,獲取之前先判斷是否已經建立了本類物件,如果已經建立了,那麼直接返回物件即可,如果還沒建立,那麼先建立本類的物件,然後再返回。

//保證single在記憶體中只有乙個物件

public class single

//宣告本類的引用型別變數,

private static single single ;

//提供乙個公共的方法獲取本類的物件

public static single getinstance()

return single;

}}class test

}

執行結果:

是同乙個物件嗎?true

設計模式 單例模式詳解

1.懶漢式,執行緒不安全 public class singletonpattern 懶漢式,執行緒不安全 private static singletonpattern instance public static singletonpattern getinstance return insta...

設計模式 單例模式詳解

單例模式 singleton 保證乙個類僅有乙個例項,並提供乙個訪問它的全域性訪問點。通常我們可以讓乙個全域性變數使得乙個物件被訪問,但它不能防止你例項化多個物件。乙個最好的辦法就是,讓類自身負責儲存它的唯一例項。這個類可以保證沒有其他例項可以被建立,並且它可以提供乙個訪問該例項的方法。我們知道,o...

設計模式詳解(1) 單例模式

設計模式詳解 1 單例模式 在有些系統中,為了節省記憶體資源 保證資料內容的一致性,對某些類要求只能建立乙個例項,這就是所謂的單例模式。單例 singleton 模式的定義 指乙個類只有乙個例項,且該類能自行建立這個例項的一種模式。例如,windows 中只能開啟乙個任務管理器,這樣可以避免因開啟多...