什麼叫單例模式:口語表達就是——乙個類有且僅有乙個物件,外部無法例項化它的新物件。只能通過呼叫的get***()方法來例項化物件,這個方法是自定義的。
最簡單的單例模式例子
建立乙個類,將這類變成單例模式的
package demo;
//自定義的類預設情況,是非單例的
public
class
myservice
/*** 自定義新增的靜態方法,用來構造單例模式
* 不允許直接通過new乙個物件來建立這個類的例項
*@return
*/public
static myservice getmyserviceinstance()
return myservice;
}}
建立乙個正常的類
package demo;
public
class myservice_not
}
接下來我們來看看單例模式和普通類到底有什麼區別
寫個測試
package demo;
public
class test
}
控制台結果
demo.myservice
@2f57d162
demo.myservice
@2f57d162
true
demo.myservice_not@3639b3a2
demo.myservice_not@6406c7e
false
java23種設計模式之單例設計模式
1 單例設計模式的概念 單例模式確保某個類只有乙個例項,而且自行例項化並向整個系統提供這個例項。在計算機系統中,執行緒池 快取 日誌物件 對話方塊 印表機 顯示卡的驅動程式物件常被設計成單例。2 單例設計模式的作用 解決乙個類在記憶體中只存在乙個物件,想要保證物件的唯一。為了避免其他程式過多的建立該...
23種設計模式之單例
目錄 1.簡介 2.優點 3.缺點 4.注意 5.形式 5.1 餓漢模式 5.2 懶漢模式 6.擴充套件 單例模式 singleton pattern 為確保某個類只有乙個例項,而且自行例項化並向整個系統提供這個例項。其中的類稱為單例類,通過將建構函式設定為private私有訪問許可權從而限制外部建...
23種設計模式之單例模式
我們也經常遇到類似的情況,為了節約系統資源,有時需要確保系統中某個類只有唯一乙個例項,當這個唯一例項建立成功之後,我們無法再建立乙個同型別的其他物件,所有的操作都只能基於這個唯一例項。為了確保物件的唯一性,我們可以通過單例模式來實現,這就是單例模式的動機所在。定義 單例模式 singleton pa...