Anleitung zum Super-Java-Schlüsselwort

Anleitung zum Super Java Keyword

 

1. Einführung

In diesem kurzen Tutorial werdenwe’ll take a look at the super Java keyword.

Einfach ausgedrückt können wir das Schlüsselwortsuperverwenden, um auf die übergeordnete Klasse zuzugreifen.

Lassen Sie uns die Anwendungen des Schlüssel-Schlüsselworts in der Sprache erkunden.

2. Das Schlüsselwortsuper mit Konstruktoren

We can use super() to call the parent default constructor. Es sollte die erste Anweisung in einem Konstruktor sein.

In unserem Beispiel verwenden wirsuper(message) mit dem ArgumentString:

public class SuperSub extends SuperBase {

    public SuperSub(String message) {
        super(message);
    }
}

Erstellen wir eine untergeordnete Klasseninstanz und sehen, was dahinter steckt:

SuperSub child = new SuperSub("message from the child class");

Das Schlüsselwortnew ruft den Konstruktor vonSuperSub auf, der selbst zuerst den übergeordneten Konstruktor aufruft und ihm das ArgumentStringübergibt.

3. Zugriff auf übergeordnete Klassenvariablen

Erstellen wir eine übergeordnete Klasse mit der Instanzvariablenmessage:

public class SuperBase {
    String message = "super class";
}

Jetzt erstellen wir eine untergeordnete Klasse mit der gleichnamigen Variablen:

public class SuperSub extends SuperBase {

    String message = "child class";

    public void getParentMessage() {
        System.out.println(super.message);
    }
}

Wir können von der untergeordneten Klasse aus auf die übergeordnete Variable zugreifen, indem wir das Schlüsselwortsuperverwenden.

4. Das Schlüsselwortsuper mit Methodenüberschreibung

Bevor Sie fortfahren, empfehlen wir Ihnen, unserenmethod overriding-Handbuch zu lesen.

Fügen wir unserer übergeordneten Klasse eine Instanzmethode hinzu:

public class SuperBase {

    String message = "super class";

    public void printMessage() {
        System.out.println(message);
    }
}

Und überschreiben Sie dieprintMessage()-Methode in unserer untergeordneten Klasse:

public class SuperSub extends SuperBase {

    String message = "child class";

    public SuperSub() {
        super.printMessage();
        printMessage();
    }

    public void printMessage() {
        System.out.println(message);
    }
}

We can use the super to access the overridden method from the child class. Dassuper.printMessage() im Konstruktor ruft die übergeordnete Methode vonSuperBase auf.

5. Fazit

In diesem Artikel haben wir das Schlüsselwortsuperuntersucht.

Wie üblich ist der vollständige Codeover on Github verfügbar.