Eu venho de linguagens como Python ou Javascript (e outras menos orientadas a objetos) e estou tentando melhorar meu conhecimento prático de Java, que eu conheço apenas superficialmente.
É uma prática ruim sempre preceder this
os atributos da instância atual? Parece mais natural para mim escrever
...
private String foo;
public void printFoo() {
System.out.println(this.foo);
}
...
do que
...
private String foo;
public void printFoo() {
System.out.println(foo);
}
...
pois me ajuda a distinguir atributos de instância de variáveis locais.
Obviamente, em uma linguagem como Javascript, faz mais sentido usar sempre this
, pois é possível ter mais aninhamento de funções, portanto variáveis locais provenientes de escopos maiores. Em Java, até onde eu entendo, nenhum aninhamento como esse é possível (exceto para classes internas), portanto, provavelmente não é um grande problema.
Em qualquer caso, eu preferiria usar this
. Seria estranho e não idiomático?
this
.
this.
quando se refere a variáveis-membro, métodos, etc. Gosto disso, concordo com esta regra. Eu acho que é melhor do que nomear algo com um sublinhado no começo. Eu seguiria a mesma regra se estivesse codificando em java.