1. 程式人生 > >java的單例設計模式(對象的延時加載)考試專用

java的單例設計模式(對象的延時加載)考試專用

clas pac ack 延時加載 專用 public get private static

java的單例設計模式(對象的延時加載) ,稱為:懶漢式 考試專用
例:
package day6;

public class Single2 { //考試專用 ,對象的延時加載 ,外號:賴漢式

private static Single2 s=null;

private Single2(){
}

public static synchronized Single2 getInstance(){ //synchronized同步鎖
if(s==null){
s=new Single2();
}
return s;
}

//如果靜態函數如上面那樣寫,效率會很低,
//解決方案如下(只改變函數,其它的不變)
public static Single2 getInstance8(){
if(s==null){
synchronized(Single2.class){
if(s==null){
s=new Single2();
}
}
}
return s;
}
}

java的單例設計模式(對象的延時加載)考試專用