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