Untersuche das Programm mit der Klasse Grafik und stelle es in erweiterten Klassenkarten dar. Starte das Programm zuerst mit der grünen Playtaste.
Die Online-IDE wird aus dem include-Ordner dieses Auftritts geladen. Dafür ist eine Internetverbindung erforderlich.
Abschlussquiz
Kreuze alle richtigen Antworten an. In manchen Fragen sind mehrere Antworten richtig.
Übersicht: alle Teilaufgaben und Ergebnisse
Hier stehen alle Arbeitsaufträge dieser Aufgabe mit ihren Ergebnissen – gut geeignet für die gemeinsame Besprechung.
a) Klassenkarte zu Grafik
Erstelle die erweiterte Klassenkarte zu Grafik: Ziehe die passenden Bausteine in den Attribut- und den Methodenbereich. Nicht alle Bausteine passen, und nicht jede Zeile muss gefüllt sein.
- Richtiges Ergebnis
- Grafik | maximaleVersuche: int, kiste: Rectangle, ball: Circle | Grafik(), tuWas(): void, bewegeBall(geschwindigkeit: int): void, act(): void – Grafik erbt von Actor.
b) Datentypen der Attribute
Beschreibe die Datentypen der drei Attribute von Grafik. Erkläre dabei, was in jedem Attribut gespeichert wird.
- Richtiges Ergebnis
- maximaleVersuche ist eine ganze Zahl (int, einfacher Datentyp). kiste und ball haben Klassen als Datentyp: Sie verweisen auf ein Rectangle- bzw. Circle-Objekt, das im Konstruktor mit new erzeugt wird.
c) Klasse Rectangle
Ergänze das Klassendiagramm um die Klasse Rectangle. Leite die Attribute aus den Parametern des Konstruktors ab und nimm nur die Methoden auf, die das Programm für kiste aufruft.
- Richtiges Ergebnis
- Rectangle | left: double, top: double, width: double, height: double | Rectangle(left: double, top: double, width: double, height: double), setFillColor(color: Color): void, rotate(angleDeg: double): void, scale(factor: double): void
d) Klasse Circle
Ergänze das Klassendiagramm ebenso um die Klasse Circle.
- Richtiges Ergebnis
- Circle | mx: double, my: double, r: double | Circle(mx: double, my: double, r: double), setFillColor(color: Color): void, move(dx: double, dy: double): void
e) kiste.rotate(45) beschreiben
Beschreibe mit Fachbegriffen, was beim Befehl kiste.rotate(45); passiert.
- Richtiges Ergebnis
- kiste ist ein Attribut von Grafik und verweist auf ein Rectangle-Objekt. Mit der Punktnotation wird dessen Methode rotate aufgerufen; das Argument 45 wird an den Parameter angleDeg übergeben. Das Rechteck dreht sich um 45 Grad.
Abschlussquiz – Frage 1
Welche Angaben gehören in eine erweiterte Klassenkarte?
- Richtiges Ergebnis
- der Datentyp jedes Attributs, z. B.
maximaleVersuche: int· die Parameter jeder Methode mit Datentyp, z. B.bewegeBall(geschwindigkeit: int)· der Rückgabetyp jeder Methode, z. B.: void
Abschlussquiz – Frage 2
Wie wird der Konstruktor von Grafik in der Klassenkarte notiert?
- Richtiges Ergebnis
Grafik()
Abschlussquiz – Frage 3
Welche Aussagen über die Attribute von Grafik stimmen?
- Richtiges Ergebnis
maximaleVersuchehat den einfachen Datentyp int und speichert eine ganze Zahl. · Der Datentyp vonkisteist die Klasse Rectangle. ·kisteundballverweisen auf Objekte, die im Konstruktor mit new erzeugt werden.
Abschlussquiz – Frage 4
Was passiert bei kiste.rotate(45);?
- Richtiges Ergebnis
- Die Methode rotate wird für das Objekt aufgerufen, auf das kiste verweist. · Der Wert 45 wird als Argument an den Parameter angleDeg übergeben.
Abschlussquiz – Frage 5
Was bedeutet void bei tuWas(): void?
- Richtiges Ergebnis
- Die Methode gibt keinen Wert zurück.