Heap и Stack

Области памяти. JVM делит память на зоны. Две главные:

Стек — свой у каждого потока int x = 5 dog Heap — общий для всех Dogобъект
  • Стек — у каждого потока свой. Хранит локальные переменные, примитивы и ссылки. Чистится автоматически при выходе из метода.
  • Heap (куча) — общая для всех потоков. Тут лежат сами объекты. За её очистку отвечает сборщик мусора.

Сборка мусора (GC). В Java не нужно удалять объекты вручную (как free в C). Сборщик мусора сам находит объекты, на которые больше нет ссылок, и освобождает память. Это убирает целый класс багов (утечки, обращение к удалённому), но добавляет паузы на уборку.

🎤 Закрыл тему, если можешь объяснить:
• что лежит в стеке, что в куче, и что делает сборщик мусора.