設計模式之單例模式

2021-10-03 18:59:36 字數 1555 閱讀 4043

外部測試

其它設計模式鏈結

保證乙個系統中僅有乙個例項,並向外提供乙個訪問它的全域性訪問點。這樣做的好處是可以節省記憶體、尤其可以保證資料的一致性,

比如說: window系統中的**站,整個window系統就乙個**站,這樣不管你用什麼方法開啟**站,都看到的是同樣的內容.保證了資料的一致性.

單例模式有 3 個特點:

單例類只有乙個例項物件

該單例物件必須由單例類自行建立

單例類對外提供乙個訪問該單例的全域性訪問點

根據建立物件的時機,分為如下兩種:

特點:

/**

* 步驟:

* 1, 私有構造 -> 那麼外部無法建立物件了

* 2, 在成員位置建立當前物件

* 3, 對外提供乙個訪問物件的方法

*/public

class

singleton

//2private

static singleton singleton =

newsingleton()

;//3

public

static singleton getinstance()

}

特點

/**

* 步驟:

* 1, 私有構造 -> 那麼外部無法建立物件了

* 2, 在成員位置宣告物件

* 3, 對外提供乙個訪問物件的方法,並建立物件

*/public

class

singleton

//2private

static singleton singleton = null;

//3public

static singleton getinstance()

return singleton;

}}

特點

/**

* 步驟:

* 1, 私有構造 -> 那麼外部無法建立物件了

* 2, 在成員位置宣告物件 -> 並加上volatile 保證所有執行緒可見

* 3, 對外提供乙個訪問物件的方法,並建立物件 -> 建立是同步的方法(synchronized)

*/public

class

singleton

//2private

static

volatile singleton singleton = null;

//3public

static

synchronized singleton getinstance()

return singleton;

}}

public

static

void

main

(string[

] args)

相同的記憶體位址,所有可以證明是同乙個物件.

設計模式之構造者模式

設計模式之工廠模式

設計模式之單例模式

前一段時間買了一本秦小波寫的 設計模式之禪 網上對這書的評價很高。現在還沒有看很多,但是有些地方頗有感觸,也並不是所有的地方都能看懂,但是會慢慢研究的。自己對於設計模式的感覺就是乙個字 牛!感覺會23種設計模式並且會熟練運用的人,真的就是大師級的牛人了,設計模式是乙個專案主管或者架構師一定要會的東西...

設計模式之單例模式

package com.xie.singleton public class singleton 提供乙個共有的靜態的入口方法 public static singleton getinstance 懶漢式 延遲載入 提供乙個私有的靜態的成員變數,但不做初始化 private static sing...

設計模式之 單例模式

單例模式 singleton 保證乙個類僅有乙個例項,並提供乙個訪問它的全域性訪問點。單例模式 單件模式 使用方法返回唯一的例項 public class singleton private static singleton instance public static singleton geti...