super auf Java

Siddharth Swami 12 Oktober 2023
super auf Java

In Java haben wir ein vordefiniertes Schlüsselwort super, das etwas mit der Elternklasse zu tun hat. In diesem Tutorial werden wir die Funktion super() ausführlich besprechen.

In Java fungiert das Schlüsselwort super als Referenzvariable für die übergeordneten Klassenobjekte. Es kann verwendet werden, um die Klassenmethoden und -variablen der Eltern aufzurufen.

Zum Beispiel

class Teacher { // Parent class
  int grade = 90;
}

class Students extends Teacher { // subclass
  Students() {
    System.out.println("Grade " + super.grade);
  }
}

public class Main {
  public static void main(String[] args) {
    Students s = new Students();
  }
}

Ausgabe:

Grade 90

Im obigen Beispiel haben wir mit dem Schlüsselwort super auf die Variable grade der Elternklasse Teacher aus dem Konstruktor ihrer Unterklasse Students zugegriffen.

Wir haben auch die Funktion super(), die den Klassenkonstruktor der Eltern aufruft. Diese Funktion wird nur zum Aufrufen der Konstruktoren der Elternklasse verwendet. Sowohl parametrische als auch nicht-parametrische Konstruktoren können mit der Funktion super() aufgerufen werden. Wenn der Konstruktor während der Verwendung der Funktion super() keinen Superklassenkonstruktor explizit aufruft, wird der Konstruktor der Superklasse ohne Argumente vom Java-Compiler selbst aufgerufen.

Siehe den Code unten.

class Teacher { // Parent class

  Teacher() // constructor
  {
    System.out.println("Teacher class Constructor");
  }
}
class Students extends Teacher { // subclass
  Students() {
    super();
    System.out.println("Students class Constructor");
  }
}

public class Main {
  public static void main(String[] args) {
    Students s = new Students();
  }
}

Ausgabe:

Teacher class Constructor
Students class Constructor

Wir haben im obigen Code eine Elternklasse Teacher und einen Elternklassenkonstruktor erstellt, der eine Nachricht ausgibt. Dann wird eine Unterklasse Students von Teacher erweitert, die über einen Konstruktor Students() verfügt, der aus der Funktion super() zum Aufrufen des übergeordneten Klassenkonstruktors besteht. Dann haben wir die Hauptklasse, die die Unterklasse zum Ausführen des Programms aufruft. Die Funktion super() hat den Konstruktor der Elternklasse aufgerufen, um die Nachricht der Elternklasse und dann der Unterklasse zu drucken.

Verwandter Artikel - Java Class