Itthon Fejlesztés Mi az a szingleton? - meghatározás a techopedia alapján

Mi az a szingleton? - meghatározás a techopedia alapján

Tartalomjegyzék:

Anonim

Meghatározás - Mit jelent a Singleton?

A szingleton olyan osztály, amely csak egyetlen példány létrehozását teszi lehetővé, és hozzáférést biztosít a létrehozott példányhoz. Statikus változókat tartalmaz, amelyek képesek befogadni önmaguk egyedi és magán példányait. Szcenáriókban használják, amikor a felhasználó csak egy objektumra akarja korlátozni az osztály megvalósulását. Ez általában akkor hasznos, ha egyetlen objektumra van szükség a tevékenységek összehangolására egy rendszeren keresztül.


A szingulett mintát olyan programozási nyelvekben használják, mint például a Java és a .NET egy globális változó meghatározására. A rendszereken keresztül használt egyetlen objektum állandó marad, és csak egyszer kell meghatározni, nem pedig többször.

A Techopedia magyarázza a Singletont

A szingleton célja, hogy önmagában csak egy példányt biztosítson, miközben megkönnyíti a globális hozzáférési pontot. A szingulett mintázat megvalósítása magában foglalja az osztály létrehozását olyan módszerrel, amely létrehozza az osztály új példányát. A szingulett minta megvalósításához az egyedüli példány és a globális hozzáférés alapelveinek teljesülniük kell. A szingulett osztály olyan, mint egy globális lerakat egy példány számára, ami a konstruktort magántulajdonossá teszi. Ezért az osztályon kívüli példányt egyáltalán nem lehet létrehozni, és a szingleton csak egy példányt tartalmazhat. A szingulett osztály megvalósítja önmagát, és fenntartja ezt a példányt a rendszereken keresztül.


Az elvont gyár-, építő- és prototípusminták szinguleteket használhatnak. A homlokzati tárgyak és a statikus tárgyak gyakran szingulettjei. A Singleton megvalósításához olyan mechanizmust kell igénybe venni, amelyen keresztül az osztálytagok hozzáférhetők anélkül, hogy osztályobjektumot kellene létrehozni, és megtartani az osztálytagok értékét az osztályobjektumok között. A szingulett létrehozásának lépései a következők:

  1. A kivitelező magántulajdonban van. Ez lehetővé teszi, hogy csak az osztály férjen hozzá a szinguletthez.
  2. Példa:

    osztály teszt adatai

    {

    Privát tesztadatok ()

    {

    //… no-op szingulettól

  3. Az osztály egyetlen belső példányát hozza létre egy módszerrel. Ebben a példában a módszert példánynak nevezzük. Az „példány” módszer az osztály inicializálására szolgál egyetlen példány eléréséhez. A példány módszer statikusként van megjelölve ebben a példában, hogy az összes szálat egységes hozzáférés biztosítsa. A példány létrehozásán kívül a „lock” utasítás a többszálú hozzáférés vezérlésére szolgál. Ez zárolja a példány létrehozását egyetlen szálra.


    Példa:


    // A szingulett belső példány lusta létrehozása

    Nyilvános statikus tesztadatpéldány

    {

    Kap

    {

    Zár (a (teszt adatok) típusa)

    {

    If (_instance == null)

    _instance = tesztdata ();

    }

    Visszatérés_instance;

    }

    }

Mi az a szingleton? - meghatározás a techopedia alapján