Встречается на собеседованиях • сегодня

Что такое структура памяти в Java

В Java память делится на несколько областей:

  1. Heap (куча) - хранит объекты и массивы. Делится на:

    • Young Generation (Eden + Survivor spaces)
    • Old Generation
    • Metaspace (с Java 8, вместо PermGen)
  2. Stack (стек) - хранит примитивы и ссылки на объекты для каждого потока. Каждый вызов метода создает новый фрейм в стеке.

  1. Method Area - хранит метаданные классов, статические переменные, константы.

  2. PC Register - хранит адрес текущей выполняемой инструкции для каждого потока.

  3. Native Method Stack - для нативных методов.

Пример с кучей и стеком:

java
public class MemoryExample {
    public static void main(String[] args) {
        int x = 5; // в стеке
        Object obj = new Object(); // объект в куче, ссылка в стеке
    }
}
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы