public class Singleton {
private static Singleton instance; //只有一個實體
private Singleton(){
// 這裡面可能跑很了多code,建立物件需要花費很多資源
}
// 多執行緒時,當物件需要被建立時才使用synchronized保證Singleton一定是單一的 ,增加程式校能
public static Singleton getInstance(){
if(instance == null){
synchronized(Singleton.class){
if(instance == null){
instance = new Singleton();
}
}
}
return instance;
}
}