— Переменная метода закрывает собой переменную класса. Т.е. обращение будет происходить к переменной метода. Но к переменной класса тоже можно обратиться, только более сложным способом.
Условие задачи:
public class Solution { // создан класс Solution тип паблик
public static void main(String[] args) { // в классе Solution coздан метод майн
Person person = new Person(); // методе майн создан объект person типа Person
System.out.println("Age is: " + person.age); // Вывод на экран текста "Age is: " + person.age (обращение к переменной объекта)
person.adjustAge(person.age); // вызов метода с вводом переменной объекта
System.out.println("Adjusted age is: " + person.age); // вывод на экран текста Adjusted age is: " + person.age (обращение к переменной объекта).
}
public static class Person { //создан класс - Person - для создания объекта
public int age = 20; // Объект имеет переменную int age = 20
public void adjustAge(int age) { //в классе (объекте) Person создан метод
age = age + 20; //в методе класса(объекта) создана переменная age !!!!! Bот непонятный момент: согласно лекции: — Переменная метода закрывает собой переменную класса. Т.е. обращение будет происходить к переменной метода.
System.out.println("Age in adjustAge() is: " + age); // Почему здесь не вывелась переменная метода?
}
}
}