diff options
| author | Florian Fischer <florian.fischer@muhq.space> | 2024-07-13 12:17:28 +0200 |
|---|---|---|
| committer | Florian Fischer <florian.fischer@muhq.space> | 2024-07-13 12:18:03 +0200 |
| commit | dee46ae2bf06373def1d7e0d0a8375198089efdb (patch) | |
| tree | 44d7ffc9d2fe39ba6caaed3befecb70dc3a1df8d /Info/23_24/07 | |
| parent | f381cd2c7414e218db5d676cf6d6669e1853c258 (diff) | |
| download | unterricht-dee46ae2bf06373def1d7e0d0a8375198089efdb.tar.gz unterricht-dee46ae2bf06373def1d7e0d0a8375198089efdb.zip | |
move rennbahn material from lesson to dedicated rennbahn dir
Diffstat (limited to 'Info/23_24/07')
| l--------- | Info/23_24/07/09/9B/img/greenfoot_buttons.png | 1 | ||||
| -rw-r--r-- | Info/23_24/07/09/9B/img/rennbahn.png | bin | 14491 -> 0 bytes | |||
| -rw-r--r-- | Info/23_24/07/09/9B/slides.md | 175 | ||||
| l--------- | Info/23_24/07/09/9B/topic | 1 |
4 files changed, 1 insertions, 176 deletions
diff --git a/Info/23_24/07/09/9B/img/greenfoot_buttons.png b/Info/23_24/07/09/9B/img/greenfoot_buttons.png deleted file mode 120000 index a1c2dfa2..00000000 --- a/Info/23_24/07/09/9B/img/greenfoot_buttons.png +++ /dev/null @@ -1 +0,0 @@ -../../../../../9/3/SpaceInvaders/img/greenfoot_buttons.png
\ No newline at end of file diff --git a/Info/23_24/07/09/9B/img/rennbahn.png b/Info/23_24/07/09/9B/img/rennbahn.png Binary files differdeleted file mode 100644 index 95c7c7ef..00000000 --- a/Info/23_24/07/09/9B/img/rennbahn.png +++ /dev/null diff --git a/Info/23_24/07/09/9B/slides.md b/Info/23_24/07/09/9B/slides.md deleted file mode 100644 index d20f010e..00000000 --- a/Info/23_24/07/09/9B/slides.md +++ /dev/null @@ -1,175 +0,0 @@ ---- -header-includes: | - \makeatletter - \beamer@ignorenonframefalse - \makeatother ---- - -## Rennbahn -\vspace{-0.75cm} -{.center} - -## \faIcon{pencil-alt} Arbeitsauftrag - Modellierung 5 min {.standout} - -Erstelle eine Klassendiagramm (mehrere Klassenkarten) zu allen Klassen, die du beim Rennen entdecken kannst. - -## Greenfoot und die geheimnisvollen Knöpfe - -{.center} - -### Act - -Ruft die `act`-Methode jedes Actors [einmal]{.underline} auf. - -### Run - -Startet eine Wiederholug und ruft während jedem Schritt die `act`-Methode jedes Actors auf. - -## Von der Klassenkarte zum Code - -::: {.columns align=center} -:::: {.column width=30%} -\begin{tikzpicture} -\begin{class}[text width=4cm]{Auto}{0, 0} -\attribute{geschwindigkeit} -\attribute{farbe} -\operation{bewegen()} -\end{class} -\end{tikzpicture} -:::: - -:::: {.column width=60%} -```java -public class Auto // Klassendefinition -{ // Attribute - int geschwindigkeit; - String farbe; - - // Methoden - public void bewegen() { - ... - } -} -``` -:::: -::: - -## Von der Klasse zum Objekt - -::: {.columns align=center} -:::: {.column width=45%} -\begin{tikzpicture} -\begin{class}[text width=4cm]{Auto}{0, 0} -\attribute{geschwindigkeit} -\attribute{farbe} -\operation{bewegen()} -\end{class} -\end{tikzpicture} -:::: - -:::: {.column width=5%} -\Large $\Rightarrow$ -:::: - -:::: {.column width=45%} -\pause -\begin{tikzpicture} -\begin{object}[text width=4cm]{a1: Auto}{0, 0} -\attribute{geschwindigkeit = 2} -\attribute{farbe = "blau"} -\end{object} -\end{tikzpicture} -:::: -::: - -\vspace{1cm} -\pause -### \faIcon{lightbulb} Wo kommen die Attributwerte her? - -\pause -Sie müssen beim Erzeugen eines Objekts angegeben werden. - -## Objekte erzeugen - -Objekte einer Klasse werden mit dem Schlüsselwort `new`{.java} erzeugt. - -\pause -### \faIcon{pencil-alt} [Der Konstruktor]{.underline} - ->- **Methode** der Klasse, die beim Erzeugen ein neues Objekt aufgerufen wird. ->- Heißt immer wie die Klasse. ->- Hat [keine]{.underline} Angabe eines Rückgabetyps. - -\pause -::: {.columns} -:::: {.column width=35%} -\vspace{0.5cm} -\begin{tikzpicture} -\begin{class}[text width=4cm]{Auto}{0, 0} -\attribute{geschwindigkeit} -\attribute{farbe} -\operation{...} -\end{class} -\end{tikzpicture} -:::: - -:::: {.column width=65%} -```java -public class Auto { -int geschwindigkeit; // Attribute -int farbe; -public Auto() { // Konstruktor - geschwindigkeit = 2; - farbe = "blau"; -} -``` -:::: -::: - -## \faIcon{desktop} Arbeitsauftrag - Implementiere den Konstruktor der Klasse Auto 10 min - -\large -* Kopiere das Greenfoot-Projekt **Rennbahn** aus dem Vorlagen-Laufwerk und öffne es in Greenfoot. -* Ergänze den **Konstruktor** der Klasse `Auto` - * Der Konstruktor soll die `geschwindigkeit` auf 2 initialisieren -* **Fuer Schnelle**: - Erzeuge ein Auto und eine Rakete im Konstruktor der Klasse `Rennbahn`. - Positioniere das Auto (`addObject(object, x, y)`{.java}) an Position $(90 | 700)$. - Positioniere die Rakete an Position $(220 | 700)$. - -## \faIcon{pencil-alt} Konstruktor \only<2->{mit Parametern} - -### \faIcon{lightbulb} Was wenn die Attributwerte nicht immer gleich sein sollen? - -\pause -$\Rightarrow$ Wir können dem Konstruktor Parameter übergeben. - -\vspace{0.5cm} -::: {.columns align=center} -:::: {.column width=40%} -\pause -`new Auto(5, "gruen");`{.java} -:::: - -:::: {.column width=5%} -\Large $\Rightarrow$ -:::: - -:::: {.column width=45%} -\pause -\begin{tikzpicture} -\begin{object}[text width=4cm]{a1: Auto}{0, 0} -\attribute{geschwindigkeit = 5} -\attribute{farbe = "gruen"} -\end{object} -\end{tikzpicture} -:::: -::: - -## \faIcon{desktop} Arbeitsauftrag - `Auto` **Konstruktor** mit Parametern - -\large -* Ergänze den Konstruktor der Klasse `Auto`: - * die Geschwindigkeit soll angegeben werden können - * die Farbe soll angegeben werden können -* **Für Schnelle:** Implementiere eine neue Klasse `Bus` als Unterklasse von `Actor` mit Geschwindigkeit 1. diff --git a/Info/23_24/07/09/9B/topic b/Info/23_24/07/09/9B/topic new file mode 120000 index 00000000..58956f92 --- /dev/null +++ b/Info/23_24/07/09/9B/topic @@ -0,0 +1 @@ +../../../../9/3/Rennbahn
\ No newline at end of file |
