Llamar a una variable de otro método en Java

Rupam Yadav 12 octubre 2023
  1. Llamar a una variable estática en un método estático dentro de la misma clase en Java
  2. Llamar a una variable estática desde un método no estático dentro de la misma clase en Java
Llamar a una variable de otro método en Java

En este tutorial, aprenderemos cómo podemos llamar a una variable de otro método en Java. Depende del tipo de variable y de su alcance dentro de la clase.

Llamar a una variable estática en un método estático dentro de la misma clase en Java

Una variable que es estática y declarada en la misma clase puede ser accedida dentro del método main y otros métodos. En el siguiente ejemplo, la variable val declarada dentro del ámbito del método main sólo está disponible dentro de ese ámbito mientras que la variable estática y se accede dentro del otro método estático.

Podemos acceder a la variable limitada del scope para pasarla al método donde pretendemos acceder a la variable.

public class CallAVariable {
  static int y = 4; // declared inside class scope.
  public static void main(String[] args) {
    String val = "Hello"; // declared inside the scope of main method hence available in main only.

    System.out.println("In Main where static variable y is: " + y);
    callInNormal(val);
  }
  public static void callInNormal(String val) {
    System.out.println("Value of static variable y in a static method is : " + y
        + " and String passed is: " + val);
  }
}

Resultado:

In Main where static variable y is: 4
Value of static variable y in a static method is : 4 and String passed is: Hello

Llamar a una variable estática desde un método no estático dentro de la misma clase en Java

La variable y es estática, pero el método para acceder a ella no es estático. Por lo tanto, necesitamos crear una instancia de la clase para acceder al método y a la variable no estática x.

public class CallAVariable {
  int x = 2;
  static int y = 6;

  public static void main(String[] args) {
    // since the method is non static it needs to be called on the instance of class.
    // and so does the variable x.
    CallAVariable i = new CallAVariable();
    System.out.println("In Main where static variable y is: " + y + " and x is: " + i.x);
    i.callInNormal(i.x);
  }
  public void callInNormal(int x) {
    CallAVariable i = new CallAVariable();
    System.out.println("Non static variable x is : " + x + " and static variable y is: " + y);
  }
}

Resultado:

In Main where static variable y is: 6 and x is: 2
Non static variable x is : 2 and static variable y is: 6
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

Artículo relacionado - Java Class

Artículo relacionado - Java Method