Junior — Middle
Hogyan valósítható meg a Singleton minta Java nyelven?
sobes.tech MI
Válasz az MI-től
A Singleton minta garantálja, hogy egy osztálynak csak egy példánya legyen, és globális hozzáférési pontot biztosít hozzá.
Java-ban ezt többféleképpen lehet megvalósítani. Egy egyszerű és szálbiztos lehetőség a késleltetett inicializálás synchronized kulcsszóval vagy egy statikus belső osztály használata.
Példa statikus belső osztállyal:
public class Singleton {
private Singleton() {
// privát konstruktor
}
private static class Holder {
private static final Singleton INSTANCE = new Singleton();
}
public static Singleton getInstance() {
return Holder.INSTANCE;
}
}
Ez a megközelítés garantálja, hogy az példány csak az első getInstance() híváskor jön létre, és szálbiztos synchronized nélkül.