Область видимости в Java

После изучения функций, условий и циклов стоит поговорить об области видимости переменных — то есть, где переменные “видны” и доступны для использования.

В примере программы ниже можно увидеть, что внутри if была определена строковая переменная d и после блока if совершается попытка вывести ее содержимое на консоль. Однако, она недоступна вне блока if.

Этот код не скомпилируется, так как все переменные, которые создаются внутри блока if НЕ ВИДНЫ внешнему блоку, то есть функции main.

Это касается не только if, а и for, switch, else и тому подобное.

class Test { static int averageOf3Nums(int a, int b, int c) { int sum = a + b + c; int resultAverage = sum / 3; return resultAverage; } public static void main(String[] args) { String b = “Some text info!”; String c = “Some text info!”; if (b.equals(c)) { String d = b + c; } System.out.println(d); } }

Вывод:

Чтобы переменная была доступна вне блока, её нужно объявить заранее, до входа в if:

class Test { static int averageOf3Nums(int a, int b, int c) { int sum = a + b + c; int resultAverage = sum / 3; return resultAverage; } public static void main(String[] args) { String b = “Some text info!”; String c = “Some text info!”; // Создаем переменную заранее String d = “”; if (b.equals(c)) { // Записываем результирующую строку // в уже созданную ранее переменную d = b + c; } // Выводим ее на консоль System.out.println(d); } }

Вывод:

Что такое ООП? Класс, объект.

ООП в Java: основы объектно-ориентированного программирования. Узнайте, что такое классы и объекты на примере. Разбираем свойства и методы.

Time to read: 13

Конструктор класса

Узнайте, как работают конструкторы в Java: создание объектов, инициализация полей. Примеры кода для понимания принципов ООП.

Time to read: 9

Инкапсуляция

Инкапсуляция в Java: один из трёх столпов ООП. Узнайте, как сокрытие деталей реализации класса защищает данные и упрощает работу с объектами. Примеры

Time to read: 13