1.單例模式的作用
單例模式保證某個類隻有一個執行個體,而且自行執行個體化并向整個系統提供這個執行個體;
2.單例模式的特點:
(1)單例類隻能有一個執行個體;
(2)單例類必須自己建立自己唯一執行個體;
(3)單例類必須給所有其他對象提供這一執行個體;
3.單例模式的用途
一般用于線程池、緩存、日志對象、對話框、驅動程式等;
4.單例模式的實作
4.單例模式的實作
public class Singleton {
private static Singleton ourInstance;
public synchronized static Singleton getInstance() {
if (null == ourInstance) {
ourInstance = new Singleton();
}
return ourInstance;
}
private Singleton() {}
}
步驟:
(1)聲明類的執行個體化對象;
(2)設計獲得執行個體化對象的方法(getInstance);
(3)判斷對象是否在記憶體空間中存在;
(4)如果不存在,建立一個對象,并傳回該對象;
(5)如果存在,則傳回對象;
(加鎖是為了保證線程安全,不發生搶占事件)