Qual è la procedura migliore per utilizzare la parola chiave this
in Java? Ad esempio, ho la seguente classe:Java: quando utilizzare la parola chiave "this"
class Foo {
Bar bar;
public Foo(Bar bar) {
this.bar = bar;
}
}
va bene e tutto, ma Java è abbastanza intelligente per sapere cosa sta succedendo se cambio l'affermazione nel costruttore per
bar = bar;
Allora perché l'uso la parola chiave this
? (Mi rendo conto che in alcune situazioni è assolutamente necessario usarlo, sto solo chiedendo situazioni come questa). In realtà, io tendo a usare la parola chiave puramente per motivi di leggibilità, ma qual è la pratica comune? Usandolo in tutto il negozio fa il mio codice sembrare un po 'disordinato, ad esempio
boolean baz;
int someIndex = 5;
this.baz = this.bar.getSomeNumber() == this.someBarArray[this.someIndex].getSomeNumber();
Ovviamente un povero pezzo di codice ma illustra il mio esempio. È solo in base alle preferenze personali in questi casi?
La stessa domanda è stata pubblicata 2 giorni fa: http://stackoverflow.com/questions/2411270/when-should-i-use-this-in-a-class Ci sono tra l'altro più creduloni: http://www.google.com/search?q=java+when+use+this+keyword+site%3Astackoverflow.com – BalusC
Il mio male, ho avuto una ricerca (chiaramente molto) rapida utilizzando la ricerca SO ma non trova qualcosa ... – jackbot
Come altri hanno sottolineato, stai eseguendo l'assegnazione a self (parametro) sopra. Ma la mia regola generale è usare 'this' quando rende il programma più * leggibile *. Se usi un qualche tipo di convenzione di denominazione per le variabili membro (ad es. '_bar' o' mBar'), scrivere 'this._bar' è solo un rumore extra, IMHO. –