Sobes.tech
Junior — Middle

Comment implémenter le pattern Singleton en Java?

sobes.tech IA

Réponse de l'IA

Le motif Singleton garantit qu'une classe n'a qu'une seule instance et fournit un point d'accès global à celle-ci.

En Java, cela peut être réalisé de plusieurs manières. Une des options simples et thread-safe consiste à utiliser une initialisation paresseuse avec le mot-clé synchronized ou à utiliser une classe interne statique.

Exemple avec une classe interne statique :

public class Singleton {
    private Singleton() {
        // constructeur privé
    }

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

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

Cette approche garantit que l'instance n'est créée qu'au premier appel à getInstance(), tout en étant sûre pour les threads sans utiliser synchronized.