Junior — Middle
Como implementar a inicialização preguiçosa do padrão Singleton?
sobes.tech IA
Resposta da IA
A inicialização preguiçosa do Singleton em Java permite criar uma instância da classe apenas na primeira vez que ela é acessada, o que economiza recursos. Uma das formas mais comuns é usar uma classe interna estática:
public class Singleton {
private Singleton() {
// construtor privado
}
private static class Holder {
private static final Singleton INSTANCE = new Singleton();
}
public static Singleton getInstance() {
return Holder.INSTANCE;
}
}
Aqui, a classe Holder é carregada e inicializada apenas na primeira chamada a getInstance(), garantindo segurança em ambientes multithread e inicialização preguiçosa sem sincronização.