wiederholung:vererbung
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
wiederholung:vererbung [2022/12/10 18:56] – [Überschreiben von Methoden] Martin Pabst | wiederholung:vererbung [2022/12/10 19:01] (aktuell) – [Beispiel 4: Feuerwerk] Martin Pabst | ||
---|---|---|---|
Zeile 196: | Zeile 196: | ||
=== UML-Diagramm zu " | === UML-Diagramm zu " | ||
- | {{ :klassen2: | + | {{ :wiederholung:pasted:20221210-195717.png}} |
Auf dem nebenstehenden Diagramm habe ich die (sehr zahlreichen!) Attribute und Methoden der Klassen '' | Auf dem nebenstehenden Diagramm habe ich die (sehr zahlreichen!) Attribute und Methoden der Klassen '' | ||
* '' | * '' | ||
Zeile 202: | Zeile 202: | ||
* '' | * '' | ||
* '' | * '' | ||
+ | |||
+ | < | ||
+ | <div style=" | ||
+ | </ | ||
Zeile 208: | Zeile 212: | ||
==== Skizze: ==== | ==== Skizze: ==== | ||
- | {{ :klassen2: | + | {{ :wiederholung:pasted:20221210-195858.png?500 }} |
< | < | ||
Zeile 245: | Zeile 249: | ||
==== Mathematische Grundlagen ==== | ==== Mathematische Grundlagen ==== | ||
- | {{ :klassen2:inheritance:stern-erklaerung.png?600}} | + | {{ :wiederholung:pasted:20221210-195939.png?600}} |
Wir wollen einen Stern mit $n$ Außenzacken zeichnen. Dazu brauchen wir die Koordinaten $(mitte_{x}, | Wir wollen einen Stern mit $n$ Außenzacken zeichnen. Dazu brauchen wir die Koordinaten $(mitte_{x}, | ||
Zeile 296: | Zeile 300: | ||
=== UML-Diagramm zu " | === UML-Diagramm zu " | ||
- | {{ :klassen2: | + | {{ :wiederholung:pasted:20221210-200031.png}} |
Auf dem nebenstehenden Diagramm habe ich die (sehr zahlreichen!) Attribute und Methoden der Klassen '' | Auf dem nebenstehenden Diagramm habe ich die (sehr zahlreichen!) Attribute und Methoden der Klassen '' | ||
* '' | * '' | ||
Zeile 356: | Zeile 360: | ||
</ | </ | ||
- | ===== Feuerwerk ===== | + | ====== Beispiel 5: Feuerwerk |
- | Das Beispiel | + | Dieses |
+ | {{ youtube> | ||
+ | < | ||
+ | <div class=" | ||
+ | <script type=" | ||
+ | new Feuerwerk(); | ||
+ | class Feuerwerk extends Actor { | ||
+ | |||
+ | | ||
+ | if(Math.random() < 0.03) { | ||
+ | |||
+ | int funkenzahl = Math.floor(Math.random() * 50 + 30); | ||
+ | int farbe = Color.randomColor(128); | ||
+ | |||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | new Funke(x, y, farbe, lebensdauer); | ||
+ | } | ||
+ | | ||
+ | |||
+ | } | ||
+ | } | ||
+ | |||
+ | } | ||
+ | |||
+ | class Funke extends Circle { | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | | ||
+ | super(x, y, 4); | ||
+ | double winkel = Math.random() * 2 * Math.PI; | ||
+ | double v = Math.random() * 15 + 5; | ||
+ | vx = v * Math.cos(winkel); | ||
+ | vy = v * Math.sin(winkel); | ||
+ | setFillColor(farbe); | ||
+ | this.lebensdauer = lebensdauer; | ||
+ | } | ||
+ | |||
+ | | ||
+ | lebensdauer--; | ||
+ | move(vx, vy); | ||
+ | vy = vy + 0.2; | ||
+ | if(lebensdauer < 30) { | ||
+ | | ||
+ | } | ||
+ | if(isOutsideView() || lebensdauer < 0) { | ||
+ | | ||
+ | } | ||
+ | } | ||
+ | |||
+ | } | ||
+ | </ | ||
+ | </ | ||
+ | </ |
wiederholung/vererbung.1670698607.txt.gz · Zuletzt geändert: 2022/12/10 18:56 von Martin Pabst