Singel

Autor: Monica Porter
Data Utworzenia: 15 Marsz 2021
Data Aktualizacji: 1 Lipiec 2024
Anonim
Single | Tahsan | Shaila Sabi | Polash | Ome | New Eid Natok
Wideo: Single | Tahsan | Shaila Sabi | Polash | Ome | New Eid Natok

Zawartość

Definicja - Co oznacza Singleton?

Singleton to klasa, która pozwala na utworzenie tylko jednego wystąpienia i daje dostęp do utworzonego wystąpienia. Zawiera zmienne statyczne, które mogą uwzględniać unikalne i prywatne wystąpienia samego siebie. Jest używany w scenariuszach, gdy użytkownik chce ograniczyć tworzenie instancji klasy tylko do jednego obiektu. Jest to pomocne zwykle, gdy do koordynowania działań w systemie wymagany jest pojedynczy obiekt.

Wzorzec singletonu jest używany w językach programowania, takich jak Java i .NET, do definiowania zmiennej globalnej. Pojedynczy obiekt używany w systemach pozostaje stały i należy go definiować tylko raz, a nie wiele razy.


Wprowadzenie do Microsoft Azure i Microsoft Cloud | W tym przewodniku dowiesz się, na czym polega przetwarzanie w chmurze i jak Microsoft Azure może pomóc w migracji i prowadzeniu firmy z chmury.

Techopedia wyjaśnia Singleton

Singleton ma na celu dostarczenie tylko jednego wystąpienia, jednocześnie ułatwiając globalny punkt dostępu. Wdrożenie wzorca singletonu wymaga utworzenia klasy za pomocą metody, która tworzy nową instancję klasy. Aby wdrożyć wzorzec singletonu, muszą być spełnione zasady pojedynczej instancji i globalny dostęp. Klasa singleton jest jak globalne repozytorium dla samej instancji, czyniąc konstruktorem prywatnym. Dlatego instancja spoza klasy w ogóle nie może zostać utworzona, a singleton może zawierać tylko jedną instancję. Klasa singleton tworzy instancję i utrzymuje tę instancję w różnych systemach.

Abstrakcyjne wzory fabryk, konstruktorów i prototypów mogą korzystać z singletonów. Obiekty elewacyjne i statyczne są często singletonami. Implementacja Singleton wymaga mechanizmu, za pomocą którego można uzyskać dostęp do członka klasy bez konieczności tworzenia obiektu klasy i utrzymywania wartości członków klasy wśród obiektów klasy. Kroki związane z tworzeniem singletonu są następujące:


  1. Konstruktor jest prywatny. Dzięki temu tylko klasa ma dostęp do singletonu.

  2. Przykład:
    dane testowe klasy
    {
    Prywatne dane testowe ()
    {
    //… no-op dla singletona

  3. Pojedyncza wewnętrzna instancja klasy jest tworzona za pomocą metody. W tym przykładzie metoda nazywa się instancją. Metoda „instancja” służy do inicjalizacji klasy w celu uzyskania dostępu do pojedynczej instancji. W tym przykładzie metoda instancji jest oznaczona jako statyczna, aby zapewnić wszystkim wątkom spójny dostęp. Poza tworzeniem instancji do blokowania dostępu wielowątkowego służy instrukcja „lock”. To blokuje tworzenie instancji w jednym wątku.

    Przykład:

    // Leniwe tworzenie instancji wewnętrznej singletonu
    Publiczna statyczna instancja danych testowych
    {
    Otrzymać
    {
    Blokada (typ (dane testowe))
    {
    Jeśli (_instance == null)
    _instance = testdata ();
    }
    Zwróć _instance;
    }
    }