Utilité de super ?

Résolu
trailer91230 Messages postés 134 Date d'inscription   Statut Membre Dernière intervention   -  
trailer91230 Messages postés 134 Date d'inscription   Statut Membre Dernière intervention   -
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

  1. KX Messages postés 19031 Statut Modérateur 3 020
     
    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
    1. trailer91230 Messages postés 134 Date d'inscription   Statut Membre Dernière intervention   2
       
      Ok merci c'est bon j'ai enfin compris...
      0