singleton: 單例模式!
01.在整個應用程式中,乙個類只有乙個例項物件!
02.這個例項物件只能通過本類中建立! ====》私有化構造!!
03.別人還得使用,通過本類中建立的乙個對外訪問的介面,來返回本類的例項物件!
建立單例模式的步驟:
1.建立靜態變數
2.私有化構造
3.提供對外訪問的介面
實現單例模式的3種方式:
1.懶漢式
2.餓漢式 推薦使用
3.雙重校驗鎖
/*** 懶漢式:
* 之後使用者第一次 呼叫getinstance()的時候,物件的唯一例項才會被建立!
*/public class student
// 3.提供對外訪問的介面
public static synchronized student getinstance()
return stu;
}/**
* 餓漢式:
* 在類裝載的時候,單例物件就被建立了!
*/public class student2
// 3.提供對外訪問的介面
public static synchronized student2 getinstance()
/*** 雙重校驗鎖:
* 為了保證多執行緒情況下,單例的正確性!
*/public class student3
// 3.提供對外訪問的介面
public static synchronized student3 getinstance() }}
return stu;
}演示類
public class studentdemo
}
Singleton 單例 模式
singleton 模式的宗旨在於確保某個類只有乙個例項,別且為之提供乙個全域性訪問點。為了防止其他工作人員例項化我們的類,可以為該類建立唯一乙個構造器,並將構造器的可見 設定為私有。值得注意的是,如果我們建立了其他的非私有的構造器,或者根本沒有為該類提 供構造器,那麼其他人員還是能例項化我們的類。...
Singleton 單例 模式
今天看了,單例模式。感覺他的本質就是,控制類例項的個數。特例就是,控制static變數的唯一性,保證各個程式共享著同一例項。乙個例子 package singleton description 這是乙個單例模式的使用demo author kyle goal 實現乙個類僅有乙個例項 singleto...
單例(Singleton)模式
單例模式的特點 singleton模式包含的角色只有乙個,那就是singleton。singleton擁有乙個私有建構函式,確保使用者無法通過new取得singleton的例項。除此之外,該模式中包含乙個靜態私有成員變數instance與靜態公有方法instance。instance方法負責檢驗並例...