Si escribo la clase siguiente:El uso de "este" en Java
public class Example {
int j;
int k;
public Example(int j, int k) {
j = j;
k = k;
}
public static void main(String[] args) {
Example exm = new Example(1,2);
System.out.println(exm.j);
System.out.println(exm.k);
}
}
El programa compila, pero cuando ejecuto el programa, el método principal imprimirá dos 0s. Sé que con el fin de decir que yo quiero para inicializar las variables de instancia en el constructor que tiene que escribir:
this.j = j;
this.k = k;
Pero si no lo escribo, a continuación, se evalúa qué variable (o consideraba) en el constructor (a la izquierda y en la parte de escritura de las expresiones)? ¿Es el argumento o la variable de instancia? ¿Hace alguna diferencia?
¿Hay otros casos donde el uso de this
es obligatorio?
Este tipo de error es una buena razón para finalizar los parámetros. –
También puede echar un vistazo a: http://stackoverflow.com/questions/132777/do-you-prefix-your-instance-variable-with-this-in-java – VonC
En uno de los puestos que trabajé, nunca permitió que se cambiaran los parámetros, pero tampoco permitió que los parámetros se marcaran "final" también. Y me gusta ese estilo. Es, err, elegante :) – Srikanth