AJPFX關於單例設計模式

單例設計模式優點:保證一個類在內存中的對象惟一性。
好比:多程序讀取一個配置文件時,建議配置文件封裝成對象。會方便操做其中數據,又要保證多個程序讀到的是同一個配置文件對象,就須要該配置文件對象在內存中是惟一的。
Runtime()方法就是單例設計模式進行設計的。如何保證對象惟一性呢?
思想: 1,不讓其餘程序建立該類對象。
2,在本類中建立一個本類對象。
3,對外提供方法,讓其餘程序獲取這個對象。
步驟: 1,由於建立對象都須要構造函數初始化,只要將本類中的構造函數私有化,其餘程序就沒法再建立該類對象;
2,就在類中建立一個本類的對象;
3,定義一個方法,返回該對象,讓其餘程序能夠經過方法就獲得本類對象。(做用:可控)
代碼體現: 1,私有化構造函數;
2,建立私有並靜態的本類對象;
3,定義公有並靜態的方法,返回該對象。
//餓漢式 class Single{
private Single(){} //私有化構造函數。
private static Single s = new Single(); //建立私有並靜態的本類對象。
public static Single getInstance(){ //定義公有並靜態的方法,返回該對象。
return s; }
} //懶漢式:延遲加載方式。
Class Single2{
private Single2(){}
private static Single2 s = null;
public static Single2 getInstance(){
if(s==null)
s = new Single2();
return s; } }設計模式

相關文章
相關標籤/搜索