Назад к вопросам
Junior
68
questionbank
Где можно применить паттерн Singleton?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
В сценариях, где требуется только один экземпляр класса во всей системе и этот экземпляр должен быть глобально доступен.
Примеры:
- Управление логами: Единый экземпляр логгера для централизованного ведения журнала событий приложения.
public class Logger { private static Logger instance; private Logger() { // Приватный конструктор для предотвращения создания экземпляров извне } public static Logger getInstance() { if (instance == null) { instance = new Logger(); } return instance; } public void log(String message) { System.out.println("LOG: " + message); } } - Конфигурация приложения: Доступ к параметрам конфигурации из единого источника.
- Пул потоков: Управление общим пулом потоков для выполнения задач.
- Драйверы устройств: Если устройство поддерживает только одно подключение или экземпляр драйвера.
- Фабрики: Для создания единственного экземпляра фабрики, отвечающей за создание других объектов.
- Управление кэшем: Централизованное управление кэшем данных.