Junior — Middle
Mi a Lazy Singleton minta célja és hogyan valósítják meg?
sobes.tech MI
Válasz az MI-től
A Lazy Singleton minta arra szolgál, hogy egy osztályból csak egy példány készüljön, és ez a példány csak az első hozzáféréskor inicializálódik, nem pedig az osztály betöltésekor. Ez erőforrásokat takarít meg, ha az objektum nem lesz szükséges.
Példa a Lazy Singleton Java-ban késleltetett inicializálással és szinkronizációval:
public class LazySingleton {
private static LazySingleton instance;
private LazySingleton() {
// privát konstruktor
}
public static synchronized LazySingleton getInstance() {
if (instance == null) {
instance = new LazySingleton();
}
return instance;
}
}
Itt az objektum csak az első getInstance() hívásakor jön létre. A szinkronizáció biztosítja a szálbiztonságot, de befolyásolhatja a teljesítményt. A fejlesztéshez használható a double-checked locking vagy egy statikus belső osztály.