Встречается на собеседованиях • сегодня
В чем разница между синглтоном в Spring и синглтоном в Java
Синглтон в Java — это шаблон проектирования, гарантирующий единственный экземпляр класса в рамках ClassLoader. Реализуется через приватный конструктор, статическое поле и метод getInstance().
java
public class Singleton {
private static Singleton instance;
private Singleton() {}
public static Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}В Spring синглтон — это scope бина по умолчанию. Контейнер создает один экземпляр на все приложение и управляет его жизненным циклом.
java
@Component
@Scope("singleton")
public class SpringSingleton { ... }Ключевые отличия:
- Управление жизненным циклом: В Java — разработчик, в Spring — контейнер.
- Потокобезопасность: В Spring бины по умолчанию потокобезопасны (если не хранят состояние), в Java нужно синхронизировать вручную.
- Гибкость: Spring позволяет менять scope (prototype, request и т.д.), Java-синглтон жестко зафиксирован.

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