Exercice : Menu

On vous fournit le code contenu dans enonce/, avec la demande suivante :
pouvoir manipuler les différents aliments de manière uniforme dans le code client.
Ceci doit être fait sans modifier les classes des différents aliments.

Le code fourni contient une classe Main ainsi que quatre classes représentant des aliments.
Chaque aliment contient une méthode implémentant sa préparation.
Plus spécifiquement, on souhaite pouvoir implémenter la méthode Main.preparerRepas() de la manière suivante :
    public static void preparerRepas(){
        Aliment s = /* à compléter */;
        Aliment o = /* à compléter */;
        Aliment r = /* à compléter */;
        Aliment k = /* à compléter */;
        
        s.cuisiner();
        o.cuisiner();
        r.cuisiner();
        k.cuisiner();
    }
Pour répondre à cette demande :
  1. Ecrire une interface Aliment contenant une seule méthode :
    public void cuisiner();
  2. Pour chacun des quatre aliments fournis, écrire un adapter qui implémente Aliment.
  3. Utiliser ces adapters dans la fonction Main.preparerRepas() afin d'implémenter cette fonction de la manière décrite ci-dessus.