Встречается на собеседованиях • сегодня
Singleton: паттерн или антипаттерн
Singleton — это паттерн проектирования, но его часто критикуют за злоупотребление.
Плюсы:
- Гарантирует единственный экземпляр класса.
- Глобальная точка доступа.
Минусы:
- Нарушает принцип единственной ответственности (SRP).
- Усложняет тестирование из-за скрытых зависимостей.
- Потенциальные проблемы в многопоточной среде.
Пример:
java
public class Singleton {
private static Singleton instance;
private Singleton() {}
public static synchronized Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}Когда использовать?
- Логгеры, конфигурации, подключения к БД — если действительно нужен один экземпляр.
Альтернативы:
- Dependency Injection (например, через Spring).
- Статические утилитные классы (если не нужен полиморфизм).
Вывод: Singleton — паттерн, но применять его стоит осторожно.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы