Alcance de una variable en Java [con ejemplo de codificación]

Publicado: 2021-02-05

Tabla de contenido

Introducción

Los programadores definen el alcance de una variable en Java que le dice al compilador sobre la región desde donde se puede acceder o ver una variable. El alcance de una variable en Java es estático por naturaleza. Significa que tenemos que declararlo solo en tiempo de compilación. En este artículo, aprenderá sobre el alcance de una variable de Java junto con sus tipos.

¿Cuál es el alcance de una variable en Java?

Cada variable utilizada en un lenguaje de programación tiene un alcance. El alcance le dice al compilador sobre el segmento dentro de un programa donde se puede acceder o usar la variable. Los programadores pueden abarcar las variables de forma léxica o estática en el caso de las variables de Java.

La variable de alcance estático significa que los programadores tienen que determinar el alcance de una variable en Java en tiempo de compilación en lugar de en tiempo de ejecución. Además, tenga en cuenta que cada clase es parte de un paquete Java. Eso se reduce a dos categorías diferentes de alcances de una variable en Java .

1. Variables miembro con ámbito de clase: las variables miembro son miembros de una clase y, por lo tanto, se declaran dentro de una clase pero no dentro de ningún método o función. Por lo tanto, podemos abordar el alcance variable como alcance de clase o alcance de nivel de clase. Los programadores declaran tales variables dentro de las llaves de la clase ( {} ) junto con un modificador de acceso. Los programadores pueden usar tales variables en cualquier lugar dentro de la clase Java pero no fuera de ella.

Ejemplo:

clase pública EgOfClassScope {

cantidad entera privada = 10;

public void egMethod() {

cantidad += 10;

}

public void otro método de ejemplo () {

Entero AmtIncr = amt + 6;

}

}

Podemos ver que la variable 'amt' es accesible dentro de todos los métodos de la clase. Si usamos el modificador de acceso público en lugar de privado, la variable será accesible desde cualquier lugar dentro del paquete.

modificador Paquete Subclase Mundo

público

protegido No

Predeterminado (sin
modificador) si no no

Privado no no no

2. Alcance local o alcance del método: los programadores pueden declarar variables locales en un alcance local que tenga un rango menor (supongamos, dentro del método). Los programadores no pueden acceder a tales variables desde fuera del método Java, incluso en la misma clase. Tienen límites en la accesibilidad, y su visibilidad termina cuando termina el alcance del método Java.

Ejemplo 1:

clase pública EgOfMethodScope {

public void PrimerMetodo() {

Salario entero = 6000;

}

segundo método vacío público () {

// Esto encontrará un error en tiempo de compilación que dice: el área no se puede resolver en una variable

salario = salario + 2000;

}

}

Es un ejemplo de un alcance de método. Aquí he creado la variable 'salario' dentro de FirstMethod(){….}. Por lo tanto, su alcance finaliza al final de FirstMethod(). Por lo tanto, utilizar esta variable en SecondMethod() creará un error ya que la variable 'salario' está fuera del alcance.

Ejemplo 2:

clase EgOfMethodScope2

{

int privado g;

public void setG(int g)

{

esto.g = g;

}

}

Aquí, usamos la palabra clave 'this' para distinguir entre el alcance local y el alcance de la variable de clase. Los programadores usan esta palabra clave para señalar el objeto actual como una variable de referencia. Aquí el programador pasa la variable como parámetro al método.

Tenga en cuenta que las variables locales no existirán una vez que finalice la ejecución del método. Hay otras formas de alcance local utilizadas dentro del método Java, pero en una parte específica dentro de él.

  • Ámbito de bucle: hay situaciones en las que declaramos variables dentro de un bucle. Dichas variables tendrán un alcance de bucle y solo se puede acceder desde dentro de un bucle.

Ejemplo:

clase pública EgOfLoopScope {

List<String> listOfEmp = Arrays.asList ("Karlos", "Gaurav", "Sue", "Dee");

public void iterarEmpName() {

Cadena todo = "";

para (nombres de cadena: listOfEmp)

{ // El alcance del ciclo comienza desde aquí

todos = todos + ” ” + nombres;

} // el alcance del ciclo termina aquí

// Encontrará un error en tiempo de compilación que dice: el nombre no se puede resolver en una variable, si intenta acceder a la variable en la siguiente línea

String lastEmpName = nombres;

}

}

En este método iterarEmpName(), la variable 'nombres' tiene un alcance de bucle (ya que es una variable de contador) y es accesible dentro de { y } de la instrucción 'for'.

  • Ámbito de soporte: los programadores pueden definir un ámbito adicional en cualquier lugar dentro del programa. Los programadores pueden definir este alcance adicional usando los corchetes { y }.

Ejemplo:

clase pública EgOfBracketScope {

vacío público EgAddOp () {

Entero total = 0;

{ // El corchete comienza desde aquí

número entero = 6;

total = total + no;

} // el alcance del paréntesis termina aquí

// Creará un error en tiempo de compilación que dice: el número no se puede resolver como una variable, si se usa en la siguiente línea

no- ;

}

}

Puntos destacados sobre el alcance de una variable en Java

  • Al igual que otros lenguajes de programación (C, C++ y C#), tenemos que usar un conjunto de llaves ( { y } ) para definir el alcance de una variable en Java.
  • Podemos acceder a una variable desde cualquier método si la definimos dentro de una clase fuera del alcance de cualquier método.
  • Para usar una variable después de la terminación de un bucle, debemos declararla antes o justo encima del cuerpo del bucle.
  • Pero no podemos implementarlo ni acceder a él sin un constructor, un método Java y un bloque.
  • El ámbito de una variable estática reside únicamente dentro de la clase.
  • El alcance define la región dentro de un programa desde donde se podrá acceder a las variables.

Aprenda cursos de desarrollo de software en línea de las mejores universidades del mundo. Obtenga programas Executive PG, programas de certificados avanzados o programas de maestría para acelerar su carrera.

Conclusión

Este artículo muestra cómo los programadores usan los ámbitos de Java para escribir diferentes programas. También nos informa sobre el área dentro de un programa donde la variable es visible. Tanto la accesibilidad como la visibilidad juegan un papel importante en la programación debido al concepto de alcance. Cualquier error en el alcance de la variable puede llevar a un programador a un error de tiempo de compilación.

Si desea mejorar sus habilidades de Java, debe tener en sus manos estos proyectos de Java. Si está interesado en obtener más información sobre Java, desarrollo de pila completa, consulte el programa Executive PG de upGrad & IIIT-B en desarrollo de software de pila completa, que está diseñado para profesionales que trabajan y ofrece más de 500 horas de capacitación rigurosa, más de 9 proyectos, y asignaciones, estado de ex alumnos de IIIT-B, proyectos finales prácticos y asistencia laboral con las mejores empresas.

¿Qué es un alcance variable en Java?

El alcance de una variable es el lugar en su programa donde se puede hacer referencia a ella. El alcance de la variable se especifica mediante la palabra clave 'alcance' en la declaración de la variable. Una variable a la que se puede acceder en 'cualquier' ámbito se puede acceder absolutamente en cualquier lugar de su programa. Una variable a la que solo se puede acceder en un ámbito específico solo se puede acceder en ese ámbito. El alcance puede ser una función, un bloque, un método, una clase o fuera de todos los métodos, bloques y clases.

¿Cuáles son los tipos de modificadores de acceso en Java?

Hay cuatro tipos de modificadores de acceso en Java: público, protegido, predeterminado (paquete) y privado. Public hace que la variable, clase o función sea accesible para cualquier lugar, protected la hace accesible para la clase en la que está definida más sus subclases, default (paquete) la hace accesible para cualquier clase en el mismo paquete y private la hace accesible solo para la clase en la que se define.

¿Qué es la palabra clave estática en Java?

Una palabra clave estática en una clase de Java indica que la clase así declarada no es una instancia de la clase, sino una clase en sí misma. Los miembros de datos estáticos de la clase son comunes a todas las instancias. Una palabra clave estática se utiliza para acceder a métodos y campos estáticos de una clase. En Java, la palabra clave estática se usa para acceder a los métodos y campos estáticos de una clase. Para acceder a los métodos y campos estáticos de una clase, debe usar el nombre de la clase, un punto (.) y el nombre del campo o método estático.