O uso de "this" em Java
Se eu escrever a seguinte classe:
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);
}
}
O programa é compilado, mas quando executo o programa, o método principal imprime dois 0s. Eu sei que, para dizer que quero inicializar as variáveis de instância no construtor, tenho que escrever:
this.j = j;
this.k = k;
Mas se eu não a escrever, qual variável será avaliada (ou considerada) no construtor (à esquerda e no lado da escrita das expressões)? É o argumento ou a variável de instância? Isso faz diferença?
Existem outros casos em que o uso dethis
é obrigatório?