Junior — Middle
Selgitage Singleton mustri kontseptsiooni ja selle peamisi omadusi.
sobes.tech AI
Vastus AI-lt
Singleton muster tagab, et klassil on ainult üks eksemplar ning pakub sellele globaalse juurdepääsu punkti.
Singletoni peamised omadused:
- Ainult üks eksemplar: klass kontrollib objekti loomist, et mitte luua rohkem kui üks.
- Globaalne kättesaadavus: eksemplar on kättesaadav kõigist programmi osadest.
- Viivitusega initsialiseerimine: objekt luuakse esimese pöördumise ajal (tihti).
Näide C#-s:
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;
}
}
}
See muster on kasulik, kui on vaja keskset ressursside või seadistuste haldamist, näiteks logija või konfiguratsiooni jaoks.