Junior — Middle
Magyarázza el a Singleton mintázat fogalmát és fő jellemzőit.
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 ehhez a példányhoz.
A Singleton fő jellemzői:
- Csak egy példány: az osztály ellenőrzi az objektum létrehozását, hogy ne legyen több.
- Globális elérhetőség: a példány bárhonnan elérhető a programban.
- Késleltetett inicializálás: az objektum az első híváskor jön létre (gyakran).
Példa C#-ban:
public class Singleton
{
private static Singleton _instance;
private static readonly object _lock = new object();
private Singleton() { }
public static Singleton Instance
{
get
{
if (_instance == null)
{
lock (_lock)
{
if (_instance == null)
_instance = new Singleton();
}
}
return _instance;
}
}
}
Ez a minta akkor hasznos, ha erőforrásokat vagy beállításokat központilag kell kezelni, például naplózót vagy konfigurációt.