Koti kehitys Mikä on singleton? - määritelmä techopediasta

Mikä on singleton? - määritelmä techopediasta

Sisällysluettelo:

Anonim

Määritelmä - Mitä Singleton tarkoittaa?

Singletoni on luokka, joka sallii vain yhden ilmentymän luomisen itsestään ja antaa pääsyn luotuun ilmentymään. Se sisältää staattisia muuttujia, jotka mahtuvat yksilöllisiin ja yksityisiin ilmentymiin itsestään. Sitä käytetään tilanteissa, joissa käyttäjä haluaa rajoittaa luokan toteutumisen vain yhdelle objektille. Tästä on hyötyä yleensä silloin, kun yksittäistä objektia vaaditaan toiminnan yhteensovittamiseksi koko järjestelmässä.


Singleton-mallia käytetään ohjelmointikielissä, kuten Java ja .NET, globaalin muuttujan määrittelemiseksi. Yksi järjestelmissä käytetty objekti pysyy vakiona ja se on määritettävä vain kerran eikä monta kertaa.

Techopedia selittää Singletonin

Singletonin on tarkoitus tarjota vain yksi ilmentymä itsestään helpottaen globaalia käyttöpistettä. Yksittäismalli toteutetaan luokan luomisella menetelmällä, joka luo luokan uuden ilmentymän. Yksittäisen mallin toteuttamiseksi yksittäisen esiintymän ja globaalin saatavuuden periaatteiden on oltava täyttyneet. Singleton-luokka on kuin globaali arkisto itselleen, jolloin rakentaja on yksityinen. Siksi luokan ulkopuolista ilmentymää ei voida luoda ollenkaan, ja singleton voi sisältää vain yhden ilmentymän. Yksittäisluokka välittää itsensä ja ylläpitää tätä esiintymää kaikissa järjestelmissä.


Abstraktit tehdas-, rakennus- ja prototyyppikuviot voivat käyttää erillisiä kappaleita. Julkisivu- ja staattiset esineet ovat usein erillisiä kappaleita. Singleton-toteutus vaatii mekanismin, jonka avulla luokan jäsentä voidaan käyttää luomatta luokkaobjektia ja pitämällä kiinni luokan jäsenten arvosta luokkaobjektien keskuudessa. Sinkun luomiseen liittyvät vaiheet ovat seuraavat:

  1. Rakentaja tehdään yksityiseksi. Tämä antaa vain luokalle pääsyn singletoniin.
  2. Esimerkki:

    luokan testitiedot

    {

    Yksityinen testitieto ()

    {

    //… no-op singletonille

  3. Yksi luokan sisäinen ilmentymä luodaan menetelmällä. Menetelmää kutsutaan esimerkiksi tässä esimerkissä. Menetelmää “ilmentymä” käytetään luokan alustamiseen pääsyyn yksittäiseen ilmentymään. Ilmentymän menetelmä on merkitty staattisella tässä esimerkissä, jotta kaikille säikeille saadaan johdonmukainen pääsy. Ilmentymän luomisen ulkopuolella ”lukitus” -käskyä käytetään monisäikeisen pääsyn ohjaamiseen. Tämä lukitsee ilmentymän luomisen yhdeksi säikeeksi.


    Esimerkki:


    // Yksittäisen sisäisen instanssin laiska luominen

    Julkinen staattinen testitietosarja

    {

    Saada

    {

    Lukko (tyyppi (testitiedot))

    {

    Jos (_instance == nolla)

    _instance = testdata ();

    }

    Palauta _instance;

    }

    }

Mikä on singleton? - määritelmä techopediasta