Sobes.tech
Назад к вопросам
Junior — Middle
70

Объясните суть шаблона проектирования Singleton и его основное предназначение.

Ответ от нейросети

sobes.tech AI

Шаблон проектирования Singleton гарантирует, что у класса есть только один экземпляр, и предоставляет глобальную точку доступа к этому экземпляру.

Основное предназначение:

  • Контроль доступа к какому-либо ресурсу или состоянию, которое должно быть единственным в приложении (например, конфигурация, пул соединений, логгер).

Пример реализации Singleton на Java:

public class Singleton {
    private static Singleton instance;

    private Singleton() {
        // приватный конструктор предотвращает создание экземпляров извне
    }

    public static synchronized Singleton getInstance() {
        if (instance == null) {
            instance = new Singleton();
        }
        return instance;
    }
}

Таким образом, при вызове getInstance() всегда возвращается один и тот же объект.