前言
設計模式這有些忘了,回顧一下。
單例設計模式的設計思想是保證內存中只有一個對象。
餓漢式
在類啓動的時候就去創建
public class SingleHungry {
private static SingleHungry singleHungry = new SingleHungry();
private SingleHungry(){
}
public static SingleHungry getInstance(){
return singleHungry;
}
}
懶漢式
public class SingleLan {
private static SingleLan singleSchema;
private SingleLan(){
}
public static synchronized SingleLan getInstance(){
if (singleSchema==null){
return new SingleLan();
}
return singleSchema;
}
}
比較
懶漢式:是不會出問題的設計模式
餓漢式:可能會出線程安全的問題
線程安全
1.是否是多線程
2.是否有共享數據
3.是否有多條語句操作共享數據
通過jdk源碼,我們也能看出runtime
類也爲單例模式
很多事情你想不通,彆着急,過一段時間你再想,就想不起來了。