Дом развитие Что такое синглтон? - определение из техопедии

Что такое синглтон? - определение из техопедии

Оглавление:

Anonim

Определение - Что означает Синглтон?

Singleton - это класс, который позволяет создавать только один его экземпляр и предоставляет доступ к этому созданному экземпляру. Он содержит статические переменные, которые могут содержать уникальные и частные экземпляры самого себя. Он используется в сценариях, когда пользователь хочет ограничить создание экземпляра класса только одним объектом. Обычно это полезно, когда для координации действий в системе требуется один объект.


Шаблон Singleton используется в языках программирования, таких как Java и .NET, для определения глобальной переменной. Один объект, используемый в системах, остается постоянным и должен быть определен только один раз, а не много раз.

Техопедия объясняет Синглтон

Синглтон предназначен для предоставления только одного своего экземпляра, одновременно обеспечивая глобальную точку доступа. Реализация одноэлементного шаблона включает в себя создание класса с методом, который создает новый экземпляр класса. Для реализации одноэлементного шаблона должны быть соблюдены принципы единого экземпляра и глобального доступа. Класс Singleton подобен глобальному репозиторию для своего экземпляра, что делает конструктор закрытым. Следовательно, экземпляр вне класса не может быть создан вообще, а одиночный объект может содержать только один экземпляр. Одиночный класс создает себя и поддерживает этот экземпляр в разных системах.


Абстрактные фабричные, конструкторские и прототипные узоры могут использовать синглтоны. Фасадные объекты и статические объекты часто являются одиночными. Для реализации синглтона требуется механизм, с помощью которого можно получить доступ к члену класса без необходимости создания объекта класса и сохранения значения членов класса среди объектов класса. Шаги, вовлеченные в создание синглтона, следующие:

  1. Конструктор сделан приватным. Это позволяет только классу иметь доступ к синглтону.
  2. Пример:

    класс тестовых данных

    {

    Частные тестовые данные ()

    {

    //… нет для синглтона

  3. Один внутренний экземпляр класса создается с использованием метода. В этом примере метод называется экземпляром. Метод «instance» используется для инициализации класса для доступа к одному экземпляру. Метод экземпляра помечен как статический в этом примере, чтобы предоставить всем потокам согласованный доступ. За пределами создания экземпляра оператор «lock» используется для управления многопоточным доступом. Это блокирует создание экземпляра в одном потоке.


    Пример:


    // Ленивое создание единственного внутреннего экземпляра

    Публичные статические тестовые данные Экземпляр

    {

    Получить

    {

    Блокировка (тип (testdata))

    {

    Если (_instance == ноль)

    _instance = testdata ();

    }

    Вернуть _instance;

    }

    }

Что такое синглтон? - определение из техопедии