Bisher hast du → Prozeduren oder → Funktionen nur im jeweiligen Programm verwenden können.
Die Definition einer → Klasse verschafft dir die Möglichkeit, Prozeduren und Funktionen in jedem beliebigen Hamsterprogramm zu verwenden.
class AllesKoennerHamster extends Hamster {
void schritteVor(int anzahlSchritte) { int schrittZaehler = 0; while (schrittZaehler < anzahlSchritte) { . . . . . . } } int bisZurMauer() { int anzahl = 0; while (this.vornFrei()) { . . . } return anzahl; }
void main() { AllesKoennerHamster willi = new AllesKoennerHamster(); willi.init (2, 2, Hamster.OST, 0); }
int anzahlSchritte = willi.bisZurMauer();... und sorge dafür, dass willi die Hälfte der Strecke zurückgeht.
void geheZuKachel(int reihe, int spalte) { /* reihe -> Position des gesuchten Hamsters in der Reihe wurde im Hauptprogramm mit getReihe() ermittelt spalte -> Position des gesuchten Hamsters in der Spalte wurde im Hauptprogramm mit getSpalte() ermittelt */ // der gesuchte Hamster befindet sich unterhalb des aktuellen Hamsters if (reihe > this.getReihe()) { . . . } // der gesuchte Hamster befindet sich oberhalb des aktuellen Hamsters else { . . . } // der Hamster geht solange vorwaerts, bis er sich in der // gleichen Reihe wie der gesuchte Hamster befindet while (reihe != this.getReihe()) { . . . } // der gesuchte Hamster befindet sich links vom aktuellen Hamster if (spalte > this.getSpalte()) { . . . } // der gesuchte Hamster befindet sich rechts vom aktuellen Hamster else { . . . } // der Hamster geht solange vorwaerts, bis er sich in der // gleichen Spalte wie der gesuchte Hamster befindet while (spalte != this.getSpalte()) { . . . } }
void setzeBlickRichtung(int richtung) { while(this.getBlickrichtung() != richtung) { . . . } }