Sobes.tech
Junior — Middle

Come implementare il pattern Singleton in Java?

sobes.tech AI

Risposta dell'AI

Il pattern Singleton garantisce che una classe abbia una sola istanza e fornisce un punto di accesso globale ad essa.

In Java, questo può essere implementato in diversi modi. Una delle opzioni semplici e thread-safe è usare l'inizializzazione pigra con la parola chiave synchronized o usare una classe interna statica.

Esempio con una classe interna statica:

public class Singleton {
    private Singleton() {
        // costruttore privato
    }

    private static class Holder {
        private static final Singleton INSTANCE = new Singleton();
    }

    public static Singleton getInstance() {
        return Holder.INSTANCE;
    }
}

Questo approccio garantisce che l'istanza venga creata solo alla prima chiamata di getInstance(), ed è sicuro per i thread senza usare synchronized.