Aufgabe 1 - Delegation anwenden
Ziel
- Sie können Interaktionen zwischen Objekten unter Berücksichtigung des dynamischen Entwurfs umsetzen (Delegation).
Hinweise
- Der Parameter
uentspricht dem Kreisradius resp. der halben Seitenlänge des Quadrats (s.a. Skizze in der Theorie). - Die lauffähige Lösung ist der Lehrperson zu präsentieren.
Aufträge
- Erstellen Sie die Klassen gemäss Klassendiagramm aber noch ohne Codierung des “Innenlebens“ der Methoden.
- Ergänzen Sie die
get- undset-Methoden der Klassen mit dem entsprechenden Code (falls möglich Properties verwenden). - Implementieren Sie die
scale-Methoden und sorgen Sie dafür, dass der Skalierungsfaktor f an die beteiligten Komponenten „deligiert“ wird. - Implementieren Sie die
__str__-Methoden auf den jeweiligen Klassen, so dass die Ausgabe derjenigen von Abb. 2 entspricht. - Implementieren Sie nun die
main-Methode gemäss dem gezeigten Sequenzdiagramm. - Führen Sie nun die
main-Methode aus und kontrollieren Sie, ob die Ausgabe den Erwartungen entspricht.

Abb. 1: Klassendiagramm

Abb. 2: Ausgabe

Abb. 3: Sequenzdiagramm