色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java懶漢和餓漢

李佳璐1年前7瀏覽0評論

Java中單例模式是一種常見的設計模式,其中懶漢式和餓漢式是兩種常見的實現方式。懶漢式在第一次調用時才實例化單例對象,而餓漢式則在類加載時就實例化單例對象。

下面是懶漢式的示例代碼:

public class LazySingleton {
private static LazySingleton instance;
private LazySingleton() {}
public static synchronized LazySingleton getInstance() {
if(instance == null) {
instance = new LazySingleton();
}
return instance;
}
}

為了保證線程安全,getInstance方法被synchronized修飾,但這也影響了性能。

餓漢式的示例代碼如下:

public class EagerSingleton {
private static EagerSingleton instance = new EagerSingleton();
private EagerSingleton() {}
public static EagerSingleton getInstance() {
return instance;
}
}

由于是在類加載時就實例化,所以getInstance方法不需要synchronized修飾。這種方式簡單直接,但是如果單例對象比較龐大,可能會導致類加載較慢。

懶漢式和餓漢式都有其適用場景和弊端,需要根據具體情況選擇合適的實現方式。