Встречается на собеседованиях • сегодня
Как очищается память в Java
В Java память управляется автоматически с помощью сборщика мусора (Garbage Collector, GC). Объекты, на которые нет ссылок, помечаются как "мусор" и удаляются во время сборки.
Основные принципы:
- Достижимость – объект удаляется, если нет ссылок из корневых точек (например, статических полей, локальных переменных в стеке).
- Сборщики мусора – разные алгоритмы (Serial, Parallel, CMS, G1, ZGC) с разными стратегиями (stop-the-world, concurrent).
- Финализация – метод
finalize()(устарел, лучше использоватьCleanerилиPhantomReference).
Пример:
java
Object obj = new Object(); // Создаётся объект в куче
obj = null; // Объект становится кандидатом на удаление
System.gc(); // Подсказка JVM запустить GC (но не гарантия) Важно:
- Нельзя принудительно удалить объект.
- Утечки памяти возможны из-за статических коллекций, незакрытых ресурсов (например,
InputStream). - Для управления памятью вне кучи (off-heap) используются
ByteBufferили библиотеки вродеUnsafe.

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