Partage
  • Partager sur Facebook
  • Partager sur Twitter

{{Titre incorrect}} this ? J'ai pas compris...

Sujet résolu
6 février 2010 à 12:24:53

Bonjour à tous ! Comme le titre l'indique, j'ai un petit problème avec JAVA... :(
Je comprends pas trop à quoi sert ce mot-clé this ! J'ai essayé de comprendre par moi-même et j'ai qu'un début de réponse...Enfin bref ! Y a t'il un programmeur qui peut m'expliquer à quoi sert ce mot-clé, et comment l'utiliser ? Merci d'avance ! :)
  • Partager sur Facebook
  • Partager sur Twitter
Il n'y a très probablement que des conneries au-dessus de cette ligne.
6 février 2010 à 12:36:45

this fait référence à la classe dans laquelle tu l'utilises.

Donc par exemple, si tu programmes un applet et que tu veux ajouter un panneau à cet applet, tu fais:
this.add(monPanneau);

Ou encore si tu crée un objet et que tu veux lui attribuer une valeur, tu fais:
this.poids = 25;
  • Partager sur Facebook
  • Partager sur Twitter
6 février 2010 à 13:02:56

Pas exactement Javaa.

this fait référence à l'Objet courant au moment où on l'utilise.

En effet, supposons une classe qui représente une balle.
Un balle possède des coordonnées et une fonction de déplacement.

Par exemple :
class Ball {
    int x;
    int y;
    Ball(int x, int y){
        this.x = x;
        this.y = y;
    }
    
    void deplacer(){
        this.x += 1;
        this.y += 1;
    }
}


this représente ainsi l'objet sur lequel nous sommes en train de travailler.
Je dirai qu'en règle général this n'est pas nécéssaire puisque l'on travaille par défaut sur les attributs de l'instance en cours (this). Néanmoins, j'aime utilise this pour bien montrer que c'est bien de l'instance en cours que nous parlons.

Ensuite, il peut arriver que l'on ait besoin de passe this en paramètre d'une fonction.

Par exemple, dans les IHM Swing en Java,
On peut avoir besoin de donner this au constructeur ou à une fonction.

donner this au constructeur d'un élément graphique, permettra à ce nouvel élément d'avoir une référence directe vers son "père", d'une certaine manière.

En bref, ne te casses pas la tête, this est l'instance en cours.
  • Partager sur Facebook
  • Partager sur Twitter
6 février 2010 à 18:48:34

J'ai compris ! Merci à vous deux ! :)
  • Partager sur Facebook
  • Partager sur Twitter
Il n'y a très probablement que des conneries au-dessus de cette ligne.
6 février 2010 à 18:48:34

Le message qui suit est une réponse automatique activée par un modérateur.
Les réponses automatiques permettent d'éviter aux modérateurs d'avoir à répéter de nombreuses fois la même chose, et donc de leur faire gagner beaucoup de temps.
Nous sommes néanmoins ouverts et si vous avez une question ou une remarque, n'hésitez pas à contacter le modérateur en question par MP.


Le titre du sujet est incorrect


Bonjour,



Ce sujet a un titre qui ne décrit pas correctement le sujet, ou le titre est en majuscules. Vous pouvez re-poster votre sujet en rectifiant ce point.

Voici quelques correspondances pour vous aider à choisir au mieux votre titre :



Merci de votre compréhension :)
Les modérateurs.
  • Partager sur Facebook
  • Partager sur Twitter