Spielfeld
Eine Klasse für das Spielfeld
Jedes Spiel braucht ein Spielfeld. Lege dafür - genau wie bei Tierisch Glücklich - eine neue Klasse mit dem Namen Spielfeld an und lösche den automatisch erzeugten Beispielcode.
Bei Ausgebüxt zählt am Ende, wie viele Schritte du gebraucht hast, um alle Tiere einzufangen. Unser Spielfeld soll deshalb als erstes die gespielten Schritte zählen können. Dafür braucht es
- ein Attribut
schritte, das bei0startet, und - eine Methode
act, die einen einzelnen Spielschritt ausführt: Sie erhöhtschritteum 1 und gibt den neuen Wert mitprintlnaus.
Der Name act (englisch für handeln) ist bei Spielen
üblich für die Methode, die einen einzelnen Schritt ausführt.
Wähle den Namen genau so, das wird später noch wichtig.
Für das Erhöhen des Attributs findest du hier drei Vorschläge:
// Vorschlag 1
fun act() {
schritte = schritte + 1
println(schritte)
}
// Vorschlag 2
fun act() {
schritte++
println(schritte)
}
// Vorschlag 3
fun act() {
schritte + 1
println(schritte)
}
Aufgabe 1
Implementiere die Klasse
Spielfeld mit dem Attribut
schritte.
Überlege dann, welche der drei Vorschläge für act funktionieren
könnten und welche nicht.
Überprüfe deine Vermutung in BlueJ: Erzeuge ein Spielfeld-Objekt
und rufe act mehrfach per Rechtsklick auf.
Beobachte dabei die Ausgabe im Terminal und das Attribut im
Objektinspektor.
Entscheide dich für einen funktionierenden Vorschlag.
schritte++ ist eine Kurzschreibweise für
schritte = schritte + 1.
Du wirst sie in Spielen oft sehen, weil dort ständig etwas hochgezählt wird.
Aufgabe 2
Erzeuge ein zweites
Spielfeld-Objekt und rufe nur bei diesem
ein paar Mal act auf.
Sage voraus, welche Werte die beiden Objektinspektoren jetzt bei
schritte anzeigen.
Überprüfe deine Vorhersage und erkläre sie mit den Begriffen
Klasse, Objekt und
Attribut.