Sobes.tech
Junior — Middle

Cum se implementează pattern-ul Singleton în Java?

sobes.tech AI

Răspuns de la AI

Modelul Singleton garantează că o clasă are o singură instanță și oferă un punct de acces global la aceasta.

În Java, acest lucru poate fi implementat în mai multe moduri. O opțiune simplă și sigură pentru fire este să folosești inițializarea leneșă cu cuvântul cheie synchronized sau să folosești o clasă internă statică.

Exemplu cu o clasă internă statică:

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;
    }
}

Această abordare garantează că instanța este creată doar la primul apel al metodei getInstance(), și este sigură pentru fire fără a folosi synchronized.