Utilité de super ?

Résolu/Fermé
trailer91230 Messages postés 134 Date d'inscription jeudi 5 août 2010 Statut Membre Dernière intervention 20 mai 2016 - 26 août 2015 à 23:14
trailer91230 Messages postés 134 Date d'inscription jeudi 5 août 2010 Statut Membre Dernière intervention 20 mai 2016 - 29 août 2015 à 14:03
Bonjour,

Je voudrais savoir l'utilité de "super" dans un programme en quoi il est si utile ?!
Si vous avez une petit exemple à me donner, car ce mot clef reste très flou dans ma tête...
Merci d'avance !!

1 réponse

KX Messages postés 16668 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 17 mars 2023 3 005
26 août 2015 à 23:27
Bonjour,

Si tu as un héritage de classe (B extends A) et que tu écrit dans la classe B tu peux utiliser this pour référencer les méthodes/constructeurs de B et super pour référencer les méthodes/constructeurs de A.

Exemple (bidon, mais c'est pour comprendre)

public class Rectangle {

    private double largeur;
    private double hauteur;

    public Rectangle(double largeur, double hauteur) {
        this.largeur = largeur;
        this.hauteur = hauteur;
    }

    public double aire() {
        return largeur*hauteur;
    }
}

public class Carré extends Rectangle {

    public Carré(double côté) {
        super(côté, côté); // appel le constructeur Rectangle(côté, côté)
    }

    public double aire() {
        return super.aire(); // appel la méthode aire() de Rectangle
    }
}
0
trailer91230 Messages postés 134 Date d'inscription jeudi 5 août 2010 Statut Membre Dernière intervention 20 mai 2016 2
29 août 2015 à 14:03
Ok merci c'est bon j'ai enfin compris...
0