Aller au contenu

Java/Héritage et polymorphisme

Leçons de niveau 14
Une page de Wikiversité, la communauté pédagogique libre.
Début de la boite de navigation du chapitre
Héritage et polymorphisme
Icône de la faculté
Chapitre no 8
Leçon : Java
Chap. préc. :Classes et objets
Chap. suiv. :Exceptions
fin de la boite de navigation du chapitre
En raison de limitations techniques, la typographie souhaitable du titre, « Java : Héritage et polymorphisme
Java/Héritage et polymorphisme
 », n'a pu être restituée correctement ci-dessus.

Une classe peut utiliser l'héritage pour prendre la même forme qu'une autre classe.

public class Exemple
{
    public Exemple()
    {
    }
}

class ExempleEnfant extends Exemple
{
    public ExempleEnfant()
    {
        super();
    }
}

Par défaut, la classe enfant utilise le constructeur par défaut du parent. Vous pouvez utiliser un autre constructeur avec le mot clé super dans la première phrase du constructeur de l'enfant.

Les interfaces sont une collection des méthodes abstract et constantes.

Un objet peut utiliser plusieurs interfaces.

public interface Exemple
{
    public static final String MA_CONSTANTE = "Peuh";

    public abstract int methode();
}

Le polymorphisme est le changement de l'activité d'une classe parent par les sous-classes.

// Exemple du http://fr.wikipedia.org/w/index.php?title=Polymorphisme_(informatique)&oldid=30800612
abstract class Forme {
   abstract float aire() ;
}

class Carre extends Forme{
   float cote;
   float aire() {
       return cote * cote;
   }
}

class Cercle extends Forme{
   float rayon;
   float aire() {
       return Math.PI*rayon*rayon;
   }
}

Aussi, il est possible d’utiliser le polymorphisme avec les classes anonymes.

{
   Forme unite = new Forme() {
      float aire() {
          return 1; 
      }
   } 
}