Объем переменных/методов в Java

управление данными с помощью моделей предметной области Java Программирование и разработка

В мире программирования термин область действия относится к области программы, в которой доступны определенные данные. В языках программирования переменные и методы должны иметь понятное имя, и оно также должно быть уникальным, однако в то же время вы должны поддерживать уникальное, понятное и лаконичное имя, что может быть немного сложно. если программа очень длинная.

Поэтому языки программирования предлагают концепцию области действия, которая говорит, что не все переменные/методы существуют везде в программе, вместо этого эти переменные и методы будут доступны в той области, где они созданы.

Область действия переменной в Java

Он определяет, будет ли переменная доступна во всей программе, в методе или она будет доступна и в других классах. Проще говоря, область действия переменных определяет, что переменные доступны только в той области, где они созданы.

Пример

Приведенный ниже фрагмент обеспечит лучшее понимание области действия переменных.

publicclassMethodScope {
publicstaticvoidmain(String[] args) {
// the variable «name» can’t be used here

String name = «John»;

// hereafter «name» can be used anywhere in the method
System.out.println (name);
}
}

Давайте рассмотрим пример, чтобы проверить, что будет на выходе, если мы попытаемся получить доступ к переменной до ее объявления:

Давайте рассмотрим пример, чтобы проверить, что будет н

Приведенный выше фрагмент подтверждает, что переменная до ее объявления недоступна.

Область видимости на уровне класса в Java

К переменным, объявленным внутри класса, могут обращаться все функции этого класса в зависимости от его модификатора/спецификатора доступа, т. е. общедоступных, частных и т. д. В некоторых случаях (т. е. в модификаторах общедоступного доступа и с использованием объектов этого конкретного класса) получать доступ и вызывать переменные и методы вне класса.

Пример

Для глубокого понимания концепций рассмотрите приведенный ниже фрагмент кода:

packagejavascope;
classClassExample1{
public String var1;
privateint var2;

publicvoidfunction1(String var1, int var2) {
// var1, var2 can be accessed here
System.out.println(«function1»);
}

privatevoidfunction2(int var3) {
// var1, var2 can be accessed here
System.out.println(«function2»);
}
}

publicclassMainClass{
publicstaticvoidmain(String[]args) {
ClassExample1 obj = new ClassExample1();
// public variables can be accessed in this class
// public methods/functions can be called from here
function1(«Scope»5);
String name = obj.var1;
// private variables can be accessed in this class
int id= obj.var2;   //Throws an error, can’t access private variables of other class here
// private methods/functions can’t be called from here
obj.function2(4);
}
}

Полный фрагмент кода будет выглядеть так:

Из приведенного выше фрагмента мы увидели, что к об

Из приведенного выше фрагмента мы увидели, что к общедоступным переменным и методам можно получить доступ и вызвать их в других классах, а также с помощью объекта класса. Однако мы не можем получить доступ к закрытым переменным одного класса для другого класса даже с помощью объекта класса.

Область действия на уровне метода в Java

Переменная, объявленная/созданная в методе, будет доступна в любом месте этого метода после ее объявления, однако она не будет доступна до ее объявления. Более того, доступ к переменной одного метода внутри другого метода невозможен, а если говорить конкретно о методах, то мы можем вызывать один метод и внутри других методов.

Приведенный ниже фрагмент поможет лучше понять область действия метода в Java:

Пример

Давайте рассмотрим приведенный ниже снимок экрана для более глубокого понимания области действия на уровне метода:

айте рассмотрим приведенный ниже снимок экрана для более глубокого пон

Из приведенного выше фрагмента ясно, что мы не можем получить доступ к переменной одного метода внутри других методов, однако мы можем вызвать метод из других методов.

Область видимости на уровне блоков в Java

Все, что заключено в фигурные скобки {}, называется областью действия блока, и переменные, созданные в блоке кода, будут доступны коду, находящемуся между фигурными скобками. Переменные, объявленные в области блока, не будут доступны за пределами области блока.

Пример

В этом примере мы создаем две переменные, имеющие область видимости на уровне метода, и инициализируем их некоторыми значениями:

publicstaticvoidmain(String[] args) {
String name = «John»;
{
int id = 0;
for (inti = 0; i<= 5; i++) {
id++;
if (id == 4) {
System.out.println(«id: « + id);
System.out.println(«name: « + name);
}

}

}
}
}

Мы используем цикл for, который повторяется пять раз и печатает имя, когда «id = 4». Фрагмент ниже даст полное представление о области действия, а также отобразит вывод:

ользуем цикл for, который повторяется пять раз и печа

Фрагмент проверяет, что он успешно обращается к обеим переменным, то есть имени, идентификатору.

Переменные, созданные на уровне блока, не будут доступны до начала или после окончания области действия блока, как показано на приведенном ниже снимке экрана:

нные, созданные на уровне блока, не будут доступны до начала или после окончания области

Приведенный выше фрагмент кода подтверждает, что ошибка возникает, когда мы пытаемся получить доступ к переменной блочного уровня за пределами области блока.

Заключение

Переменная, объявленная в области действия метода, будет доступна только внутри метода, а переменная, объявленная в области действия блока, будет доступна в области действия блока. Мы не можем получить доступ к переменной до ее объявления, а доступ к переменным за пределами области видимости приведет к ошибке. Эта статья представляет собой исчерпывающее руководство по области действия переменных и методов в Java.

Читайте также:  8 структур данных Python
Оцените статью
bestprogrammer.ru
Добавить комментарий