Guide du mot-clé super Java

Guide du mot clé super Java

 

1. introduction

Dans ce tutoriel rapide,we’ll take a look at the super Java keyword.

En termes simples, nous pouvons utiliser le mot clésuper pour accéder à la classe parente.

Explorons les applications du mot-clé principal dans la langue.

2. Le mot-clésuper avec les constructeurs

We can use super() to call the parent default constructor. Ce devrait être la première déclaration d'un constructeur.

Dans notre exemple, nous utilisonssuper(message) w avec l'argumentString:

public class SuperSub extends SuperBase {

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

Créons une instance de classe enfant et voyons ce qui se passe derrière:

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

Le mot clénew appelle le constructeur duSuperSub, qui lui-même appelle d'abord le constructeur parent et lui passe l'argumentString.

3. Accès aux variables de classe parent

Créons une classe parente avec la variable d’instancemessage:

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

Maintenant, nous créons une classe enfant avec la variable du même nom:

public class SuperSub extends SuperBase {

    String message = "child class";

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

Nous pouvons accéder à la variable parent à partir de la classe enfant en utilisant le mot clésuper.

4. Le mot-clésuper avec remplacement de méthode

Avant d'aller plus loin, nous vous conseillons de consulter notre guidemethod overriding.

Ajoutons une méthode d'instance à notre classe parente:

public class SuperBase {

    String message = "super class";

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

Et remplacez la méthodeprintMessage() dans notre classe enfant:

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. Lesuper.printMessage() dans le constructeur appelle la méthode parent à partir deSuperBase.

5. Conclusion

Dans cet article, nous avons exploré le mot-clésuper.

Comme d'habitude, le code complet est disponibleover on Github.