Aufgabe 5 - Nutzen von Interface; ein Zoo

Ziel

Sie können ein Interface mittels Duck-Typing realisieren, um ein Objekt etwas tun zu lassen, falls es das kann.

Ausgangslage

Gegben ist das folgende Klassendiagramm:

Die Klassen Animal, Building und Vehicle sowie deren Ableitungen sind implementiert. Hier müssen Sie nichts anpassen. Ebenso sind der Konstruktor wie auch die privaten Methoden der Klasse Zoo bereits vorhanden.
Im Auftrag werden Sie sowohl durch die 3 Veerbungsbäume traveriseren als auch über alle Objekte, um den Inventarwert zu bestimmen.

Auftrag

  1. Laden Sie das Repo von github-classroom (Link im Moodle-Kurs)
  2. implementieren Sie in der Klasse Zoo die 4 im Klassendiagramm fett markierten Methoden.
    - print_all_··· liefert jeweils eine Liste der entsprechenden Objekte aus der Vererbungshierarchie.
    - print_worth_··· summiert aus allen Objekten den Inventarwert und gibt diesen aus.

Hinweise:

Abgabe

Pushen Sie die Lösung auf github-classroom.
Wenn Sie für das Inventar den Wert Fr. 3654000.0 erhalten, haben Sie vieles richtig gemacht.


René Probst