Назад к вопросам
Junior — Middle
81
Как отличаются область видимости и хранение данных для локальных переменных и переменных, принадлежащих объекту?
Ответ от нейросети
sobes.tech AI
Локальные переменные в Java объявляются внутри методов, конструкторов или блоков и существуют только во время выполнения этого блока кода. Их область видимости ограничена этим блоком, и они хранятся в стеке вызовов. После выхода из блока локальная переменная уничтожается.
Переменные, принадлежащие объекту (поля класса), объявляются внутри класса, но вне методов. Они существуют столько, сколько жив объект, и хранятся в куче. Область видимости таких переменных — весь класс, и к ним можно обращаться из любых методов этого класса (с учетом модификаторов доступа).
Пример:
class Example {
int field; // переменная объекта
void method() {
int localVar = 10; // локальная переменная
System.out.println(localVar);
}
}