¿Cuál es la mejor práctica para usar la palabra clave this
en Java? Por ejemplo, tengo la clase siguiente:Java: cuándo utilizar la palabra clave 'this'
class Foo {
Bar bar;
public Foo(Bar bar) {
this.bar = bar;
}
}
eso está bien y todo, pero Java es lo suficientemente inteligente como para saber lo que está sucediendo si cambio de la declaración en el constructor de
bar = bar;
Entonces, ¿por uso la palabra clave this
? (Me doy cuenta de que en algunas situaciones, es totalmente necesario usarlo, solo estoy pidiendo situaciones como esta). En realidad, tiendo a usar la palabra clave solo para leer, pero ¿cuál es la práctica común? Al usarlo por toda la tienda hace que mi código de mirar un poco desordenado, por ejemplo
boolean baz;
int someIndex = 5;
this.baz = this.bar.getSomeNumber() == this.someBarArray[this.someIndex].getSomeNumber();
Obviamente un poco pobre de código pero ilustra mi ejemplo. ¿Es solo por preferencia personal en estos casos?
La misma pregunta fue publicada hace 2 días: http://stackoverflow.com/questions/2411270/when-should-i-use-this-in-a-class Hay por cierto más incautos: http://www.google.com/search?q=java+when+use+this++wordword+site%3Astackoverflow.com – BalusC
Malo, tuve una búsqueda (claramente muy) rápida utilizando la búsqueda SO pero no lo hice encuentra algo ... – jackbot
Como han señalado otros, estás haciendo una asignación a self (parámetro) más arriba. Pero mi regla de oro es usar 'this' cuando hace que el programa sea más * legible *. Si utiliza algún tipo de convención de nomenclatura para las variables miembro (por ejemplo '_bar' o' mBar'), entonces escribir 'this._bar' es solo un ruido extra, en mi humilde opinión. –