Junior — Middle
62
Каким образом организована область памяти для переменных в языке Java?
Companies where asked
Answer from AI
sobes.tech AI
В Java область памяти для переменных организована следующим образом:
- Стек (Stack): хранит локальные переменные и параметры методов. Каждому потоку соответствует свой стек. Переменные в стеке существуют только во время выполнения метода.
- Куча (Heap): используется для хранения объектов и массивов, созданных с помощью оператора
new. Куча общая для всех потоков. - Метаспейс (Metaspace): хранит метаданные классов и другую служебную информацию.
Пример:
public void example() {
int localVar = 10; // хранится в стеке
String str = new String("Hello"); // объект String в куче, ссылка в стеке
}
Таким образом, примитивные локальные переменные и ссылки на объекты хранятся в стеке, а сами объекты — в куче.