Singleton

Kirjoittaja: Monica Porter
Luomispäivä: 15 Maaliskuu 2021
Päivityspäivä: 1 Heinäkuu 2024
Anonim
SINGLETON - ROGBODO ( Clip officiel 2021 )
Video: SINGLETON - ROGBODO ( Clip officiel 2021 )

Sisältö

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.


Johdanto Microsoft Azureen ja Microsoft Cloud | Tämän oppaan läpi opit mitä pilvipalvelussa on kyse ja kuinka Microsoft Azure voi auttaa sinua siirtämään ja johtamaan yritystä pilvestä.

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