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

Kann man im statischen Methode im Java das this-Schlüsselwort verwenden?

Statische Methoden gehören zu dieser Klasse und werden zusammen mit der Klasse in den Speicher geladen. Sie können sie ohne das Erstellen eines Objekts aufrufen. (Verwenden Sie den Klassennamen als Referenz).

Beispiel

public class Sample{
   static int num = 50;
   public static void demo(){
      System.out.println("Inhalt der statischen Methode");
   }
   public static void main(String args[]){
      Sample.demo();
   }
}

Ausgaberesultat

Inhalt der statischen Methode

Das Schlüsselwort "this" wird verwendet, um auf Instanzen zu verweisen. Da statische Methoden keine (gehören) zu einer Instanz haben,Daher kann "this" nicht in statischen Methoden verwendet werden. Wenn es immer noch so ist, versuchen Sie dies, dann wird ein Kompilierungszeitfehler generiert.

Beispiel

public class Sample{
   static int num = 50;
   public static void demo(){
      System.out.println("Inhalt der statischen Methode"+this.num);
   }
   public static void main(String args[]){
      Sample.demo();
   }
}

Kompilierungszeitfehler

Sample.java:4: Fehler: nicht-Die statische Variable this kann nicht aus einem statischen Kontext referenziert werden
   System.out.println("Inhalt der statischen Methode"+this.num);
                                                      ^
1 Fehler