This = incompréhension !

Résolu
Skymer Messages postés 565 Statut Membre -  
Skymer Messages postés 565 Statut Membre -
Bonjour,
Je ne comprends toujours pas l'utilité du mot clef this, avant je l'utilisais toujours pour tout. Puis je me suis rendu compte qu'il ne servait qu'à ça :
public void setVar(Object var){
 this.var = var
}

Et à :
public void autreExemple(){
 System.out.println(this.getName + "\t" + this.uneMethode);
}

Est-ce vraiment les seuls utilisations de this ?

Skymer
"On à jamais rien, sans rien !"
"Ne jamais abandonnez"

1 réponse

  1. KX Messages postés 19031 Statut Modérateur 3 020
     
    Bonjour,

    Tu peux également utiliser this pour le passer en paramètre d'une méthode.

    Exemple :
    System.out.println(this);


    Dans le cas d'un constructeur tu peux également utiliser this pour appeler un autre constructeur. Dans ce cas this doit être la première instruction de ce constructeur.

    Exemple :

    public class MaClasse {
        public MaClasse(String param) {
             System.out.println(param);
        }
        public MaClasse() {
             this(null); // appelle le constructeur public MaClasse(String param) avec param == null
        }
    }

    Remarque : dans ton deuxième exemple, this n'est pas obligatoire :
    System.out.println(this.getName + "\t" + this.uneMethode);

    Tu pourrais directement faire :
    System.out.println(getName + "\t" + uneMethode);
    0
    1. Skymer Messages postés 565 Statut Membre 75
       
      Merci beaucoup, je ne te connais pas, mais tu es un puits à informations, d'ailleurs tant que tu es là, comment arrêter le traitement dans une boucle for tel que celle ci
      for (int i : list){
      	if (i == 10){
      		//Comment arrêter le traitement de la boucle for ?
      	}
      }
      0
      1. Skymer Messages postés 565 Statut Membre 75 > Skymer Messages postés 565 Statut Membre
         
        C'est bon, j'ai utilisé l'instruction break :)
        0