Skip to content

Le Polymorphisme : Mise en pratique ​

Table des matières

Introduction ​

Dans cette mise en pratique, nous allons voir l'intérêt du Polymorphisme. Le polymorphisme est le fait qu'une classe mère peut prendre plusieurs formes (poly : plusieurs, morphisme : forme). Avec le polymorphisme nous pouvons donc écrire sans que cela pose problème :

java
Forme monDessin = new Cercle() ;
Forme monDessin = new Rectangle() ;

Un instant !

C'est possible évidemment seulement si Cercle et Rectangle héritent de Forme :

Exemple UML

Exercice 1 ​

Écrire les classes nécessaires au fonctionnement du programme suivant. Pour cet exercice, vous ne fournirez que les méthodes nécessaires au fonctionnement.

Évidemment…

Vous n'oublierez pas de commenter votre code !

Le PHP ne permettant pas d'illustrer entièrement le polymorphisme, nous allons travailler avec un exemple en Java.

java
public class TestMetiers {
    public static void main(String[] argv) {
        ArrayList<Coronavirus> coronavirusList = new ArrayList<Coronavirus>();

        coronavirusList.add(new Alpha("B.1.1.7"));
        coronavirusList.add(new Beta("B.1.351"));
        coronavirusList.add(new Gamma("P.1"));
        coronavirusList.add(new Omicron("B.1.1.529"));
        coronavirusList.add(new Gamma("P.1"));
        coronavirusList.add(new Delta("B.1.617.2"));
        coronavirusList.add(new Omicron("B.1.1.529"));
        coronavirusList.add(new Alpha("B.1.1.7"));
        coronavirusList.add(new Omicron("B.1.1.529"));

        coronavirusList.forEach(element -> {
            element.affiche();
        });
    }

}

Avant d'attaquer

  • Réfléchissez à la modélisation UML.
    • Combien devons-nous créer de classes ?
  • Comment est-ce possible de sauvegarder dans une même liste des objets de types différents ?
  • Question code, comment s'appelle l'écriture à l'intérieur du forEach ?
×

Reformulation

La reformulation (IA exécutée localement dans votre navigateur) peut faire des erreurs. Envisagez de vérifier les informations.