Parámetros de un método

Los parámetros se declaran en la cabecera del método de la siguiente forma:
[modificadores_de_método] Tipo_devuelto Nombre_de_método (lista de parámetros){}

La lista de parámetros consiste en una serie de variables, separadas por comas y declarando el tipo al que pertenecen.

Por ejemplo:
public static void nombreMetodo (int var1, int var2, String var3);

La declaración de un parámetro puede ir antecedida, como ocurre con las variables locales por la palabra reservada final y no puede ser modificable en el cuerpo del método.

Los parámetros de un método pueden ser de 2 tipos:

Variables de tipo simple de datos
El paso de parámetros se realiza siempre por valor. es decir, el valor del parámetro de llamada no puede ser modificado por el cuerpo del método.
Variables de tipo objeto (referencias)
En este caso lo que se pasa al método es un puntero al objeto y el valor del parámetro de llamada si que puede ser modificado dentro del método a no ser que tenga final

Para comprender esto lo mejor es un ejemplo:

class Objeto{
  int variable;
  public Objeto (int var){
    variable=var;
  }
}

class Parametros {
  public static void main (String[] args){
    int var1;
    Objeto obj;
    obj = new Objeto(1);
    var1 = 2;
    System.out.println("Valor del objeto =  " +obj.variable);
    System.out.println("Valor de la variable = " +var1);
    modifica(var1,obj);
    System.out.println("- Despues de llamar modifica() -");
    System.out.println("Valor del objeto = " +obj.variable);
    System.out.println("valor de la variable = "+var1);
  }
  static void modifica (int vv, Objeto oo){
    vv++;
    oo.variable++;
  }
}

La salida de este código es:

Valor del objeto =  1
Valor de la variable = 2
- Despues de llamar modifica() -
Valor del objeto = 2
valor de la variable = 2

Como puedes ver, se ha modificado el valor del objeto obj (pasado por parámetros de referencia) y no se modifica la variable var1 (pasado por parámetro de valor)

Comments

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

More information about formatting options