1. 程式人生 > >java懶載入建立例項程式碼詳解

java懶載入建立例項程式碼詳解

  36套java進階高階架構師視訊+38套大資料視訊  保證全是硬貨需要的
    +微信:
    du13797566440 
/**

*
 * 描述:懶載入
 * 作者: dlj
 * 時間: 2017年12月22日 下午4:21:25
 */
public class Single {


/***
* 方法1  靜態內部類 
*懶載入模式的優化版,在類被裝載時,靜態內部類並沒有被例項化,
* 只有getInstance()時才 會裝載 SingletonHolder 類,靜態內部類方式也能很好地,實現執行緒安全、高效率和延遲載入特性。
*/
private static class Holder {
private static final Single INST3 = new Single();
}
public static Single getInstance() {
return Holder.INST3;
}



/***
*方法2 懶載入模式普通版(dbck)  第一個if控制執行緒是否加鎖,第二個if判斷是否建立例項 作者: dlj 時間: 2017年12月22日 下午4:02:31
*/
private static Single s = null;
public static Single getInstends() {
if (s == null) { 
synchronized (Single.class) {
if (s == null) {
s = new Single();
}
}
}
return s;
}


}