objets ont des méthodes et des attributs (variables) qui sont dérivées des classes, afin de préciser les méthodes et les variables appartiennent à un objet particulier le mot réservé this
est utilisé.Dans le cas des variables d'instance, il est important de comprendre la différence entre les paramètres implicites et explicites. Jetez un oeil à l'appel fillTank
pour l'objet audi
.
Car audi= new Car();
audi.fillTank(5); // 5 is the explicit parameter and the car object is the implicit parameter
La valeur entre parenthèses est le paramètre implicite et l'objet lui-même est le paramètre explicite, les méthodes qui ne sont pas des paramètres explicites, utilisent des paramètres implicites, le procédé fillTank
possède à la fois explicite et un paramètre implicite.
permet de jeter un coup d'oeil de plus près la méthode fillTank
dans la classe Car
public class Car()
{
private double tank;
public Car()
{
tank = 0;
}
public void fillTank(double gallons)
{
tank = tank + gallons;
}
}
Dans cette classe, nous avons une variable d'instance « réservoir ». Il peut y avoir beaucoup d'objets qui utilisent la variable d'instance de tank, afin de spécifier que la variable d'instance "tank" est utilisée pour un objet particulier, dans notre cas l'objet "audi" que nous avons construit précédemment, nous utilisons le mot-clé réservé this
. pour les variables d'instance l'utilisation de 'this' dans une méthode indique que la variable d'instance, dans notre cas "tank", est une variable d'instance du paramètre implicite.
Le compilateur java ajoute automatiquement le mot réservé this
de sorte que vous n'avez pas à ajouter, il est une question de préférence. Vous ne pouvez pas utiliser this
sans un point (.) Car ce sont les règles de java (la syntaxe).
En résumé.
- objets sont définis par des classes et disposer de méthodes et variables
- L'utilisation de
this
sur une variables exemple dans un procédé indique que la variable d'instance appartient au paramètre implicite, ou qu'il est une variable d'instance du paramètre implicite.
- Le paramètre implicite est l'objet dont la méthode est appelée dans ce cas "audi".
- Le compilateur java ajoute automatiquement le ce mot réservé, ajoutant qu'il est une question de préférence
this
ne peut pas être utilisé sans un point (.) C'est syntaxiquement invalide this
peut également être utilisé pour distinguer entre les variables locales et les variables globales qui ont le même nom - le mot de réserve
this
s'applique également aux méthodes, pour indiquer qu'une méthode appartient à un objet particulier.
Aux répondeurs: http://meta.stackexchange.com/questions/15775/do-you-delete-your-own-answer-when-its-a-dupliquer – BalusC
Yakshemash! Alors, amis. Vous pouvez également faire référence à ma question ici - https://stackoverflow.com/questions/23334336/this-in-java-exception-in-thread-main-java-lang-stackoverflowerror Chenqui. –