Java использует кучу (Heap) и стек (Stack) для управления памятью.
- Heap (Куча):
- Хранит объекты и динамически выделяемую память.
- Это область, разделяемая между потоками.
- Управляется сборщиком мусора (Garbage Collector).
- Stack (Стек):
- Хранит вызовы методов, локальные переменные и ссылки на объекты.
- Каждый поток имеет свой стек, и память в стеке освобождается автоматически при завершении метода.
Хранение static
объектов:
- Static переменные и методы хранятся в специальной области памяти, называемой Метаспейсом (Metaspace), начиная с Java 8. Static объекты принадлежат классу, а не экземплярам.