Junior — Middle
Cum se implementează inițializarea leneșă a pattern-ului Singleton?
sobes.tech AI
Răspuns de la AI
Inițializarea leneșă a Singleton în Java permite crearea unei instanțe a clasei doar la prima accesare, economisind resurse. Una dintre cele mai comune metode este utilizarea unei clase interne statice:
public class Singleton {
private Singleton() {
// constructor privat
}
private static class Holder {
private static final Singleton INSTANCE = new Singleton();
}
public static Singleton getInstance() {
return Holder.INSTANCE;
}
}
Aici, clasa Holder este încărcată și inițializată doar la primul apel al metodei getInstance(), asigurând siguranța în medii multi-thread și inițializare leneșă fără sincronizare.