27 lines
1.2 KiB
Markdown
27 lines
1.2 KiB
Markdown
# Nonstatic Member Class
|
|
|
|
[Musterlösung](solution/)
|
|
|
|
## Lernziel
|
|
|
|
Eine nichtstatische Elementklasse verwenden.
|
|
|
|
## Aufgabe
|
|
|
|
Gehen Sie in das Paket [pr2.lambda.nonstatic](../sources/src/main/java/pr2/lambda/nonstatic/).
|
|
|
|
Wieder geht es um das einfache Spiel aus der ersten Aufgabe. Diesmal sollen Sie allerdings die Klasse `Alien` zu einer nichtstatischen Elementklasse von `GameBoard` machen. Achten Sie insbesondere darauf, dass sie nur noch die implizite Referenz `GameBoard.this` verwenden, um das Board innerhalb von `Alien` zu verwenden. Außerdem soll sich `Alien` im Konstruktor selbst als `MouseListener` registrieren, d.h. die entsprechende Zeile `addMouseListener(alien);` soll aus `GameBoard` verschwinden und in `Alien` verwendet werden.
|
|
|
|
Lassen Sie das Spiel wieder laufen und überprüfen Sie, ob es korrekt funktioniert.
|
|
|
|
|
|
## Abgabe (optional)
|
|
|
|
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
|
|
|
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
|
|
|
1. Öffnen Sie eine Kommandozeile (Terminal).
|
|
2. Gehen Sie in Ihr Working Directory.
|
|
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
|
4. Bauen Sie das Projekt mit dem Kommando `mvn`. |