Встречается на собеседованиях • сегодня
Почему переменные в Stack не ссылаются на объект в Heap
В Java примитивные переменные (int, char и т.д.) хранятся в стеке напрямую, а не в куче. Для объектов в стеке хранится только ссылка (указатель) на сам объект, который размещается в куче.
Причина в управлении памятью:
- Стек работает по принципу LIFO (Last In First Out), память выделяется и освобождается быстро
- Куча требует более сложного управления (сборщик мусора)
Пример:
java
int a = 5; // примитив в стеке
Object obj = new Object(); // ссылка в стеке, объект в кучеПримитивы не могут ссылаться на объекты, так как они хранят значения напрямую, а не адреса памяти. Это сделано для производительности.

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