English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Peut-on utiliser le mot-clé this dans une méthode statique en Java ?

Les méthodes statiques appartiennent à la classe, elles sont chargées en mémoire avec la classe. Vous pouvez les appeler sans créer d'objet (en utilisant le nom de la classe comme référence).

Exemple

public class Sample{
   static int num = 50;
   public static void demo(){
      System.out.println("Contenu de la méthode statique");
   }
   public static void main(String args[]){
      Sample.demo();
   }
}

Résultat de la sortie

Contenu de la méthode statique

Le mot-clé this est utilisé pour se référer à l'instance. Comme les méthodes statiques n'appartiennent pas à aucune instance,Par conséquent, il est impossible d'utiliser this dans une méthode statique。Si c'est toujours le cas, essayez cela, cela génère une erreur à la compilation.

Exemple

public class Sample{
   static int num = 50;
   public static void demo(){
      System.out.println("Contenu de la méthode statique")+this.num);
   }
   public static void main(String args[]){
      Sample.demo();
   }
}

Erreur à la compilation

Sample.java:4: erreur : non-La variable statique this ne peut pas être référencée à partir d'un contexte statique
   System.out.println("Contenu de la méthode statique")+this.num);
                                                      ^
1 erreur