Pochodzę z języków takich jak Python lub Javascript (i innych, które są mniej zorientowane obiektowo) i staram się poprawić moją praktyczną znajomość Javy, którą znam tylko powierzchownie.
Czy uważanie this
za wcześniejsze atrybuty instancji jest uważane za złą praktykę ? Pisanie jest dla mnie bardziej naturalne
...
private String foo;
public void printFoo() {
System.out.println(this.foo);
}
...
niż
...
private String foo;
public void printFoo() {
System.out.println(foo);
}
...
ponieważ pomaga mi to odróżnić atrybuty instancji od zmiennych lokalnych.
Oczywiście w języku takim jak Javascript sensowniej jest zawsze używać this
, ponieważ można mieć więcej funkcji zagnieżdżania, stąd lokalne zmienne pochodzące z większych zakresów. O ile rozumiem w Javie, takie zagnieżdżanie nie jest możliwe (z wyjątkiem klas wewnętrznych), więc prawdopodobnie nie jest to duży problem.
W każdym razie wolałbym użyć this
. Czy byłoby to dziwne i nie idiomatyczne?
this
.
this.
odniesienie do zmiennych składowych , metod itp. Podoba mi się, zgadzam się z tą regułą. Myślę, że to jest lepsze niż nazywanie czegoś znakiem podkreślenia na początku. Postępowałbym zgodnie z tą samą zasadą, gdybym kodował w Javie.