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) peut faire des erreurs. Envisagez de vérifier les informations.