Sobes.tech
Junior — Middle

Izskaidrojiet Singleton modeļa koncepciju un tā galvenās īpašības.

sobes.tech AI

Atbilde no AI

Singleton paraugs nodrošina, ka klasei ir tikai viens eksemplārs un nodrošina globālu piekļuvi šim eksemplāram.

Galvenās Singleton iezīmes:

  • Tikai viens eksemplārs: klase kontrolē objekta izveidi, lai nebūtu vairāk.
  • Globāla pieejamība: eksemplārs ir pieejams no jebkuras programmas daļas.
  • Aizkavēta inicializācija: objekts tiek izveidots pirmās piekļuves brīdī (bieži).

Piemērs C#:

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

Šis modelis ir noderīgs, ja nepieciešams centralizēti pārvaldīt resursus vai konfigurācijas, piemēram, žurnālfailu vai konfigurāciju.