Hallo zusammen,
ich glaube ich steh wirklich auf dem Schlauch. Ich habe hier ein Beispielprogramm welches funktioniert und irgendwie auch Sinn macht, nur das "wie genau funktioniert es fehlt" mir noch.
Ich habe ein Objekt frosch aus einer vorhandenen Spiel-Klasse und diese implementiert eine Methode getDeltaPos(). getDeltaPos() liefert ein Punktobjekt (bestehend u.a. aus Variablen für x und y Koordinaten) zurück. Dabei wird lediglich eine Instanzvariable des Spielobjektes abgefragt und zurückgegeben.
Die Klasse für Punkte implementiert u.a. eine Methode addMod(). In dieser wird ein übergebender Punkt, genauer gesagt seine x und y Koordinaten, zu dem angesprochenen Punkt addiert.
Jetzt gibt es in dem Beispiel eine Zeile die schaut aus wie folgt:
Was passiert da jetzt genau? Ich verstehe soviel, dass vom Objekt frosch die Methode getDeltaPos() aufgerufen wird. Soweit so gut, es kommt also eine Instanzvariable der Klasse Punkt vom frosch zurück.
Wird jetzt auf diese Instanzvariable der Klasse Punkt die Methode addMod() angewandt? Schreibt quasi an dieser Stelle eine Punkt-Methode direkt in mein Spielobjekt (bzw. die zugehörige Variable)?
Wäre es nicht logischer wenn ich etwas machen würde das grob so ausschaut:
Wie nennt sich das was da in dem oberen Beispiel passiert? Ist das eine Form von Methoden-Verkettung?
Vielen Dank schon mal für das Lösen meines Gehirnknotens!
ich glaube ich steh wirklich auf dem Schlauch. Ich habe hier ein Beispielprogramm welches funktioniert und irgendwie auch Sinn macht, nur das "wie genau funktioniert es fehlt" mir noch.
Ich habe ein Objekt frosch aus einer vorhandenen Spiel-Klasse und diese implementiert eine Methode getDeltaPos(). getDeltaPos() liefert ein Punktobjekt (bestehend u.a. aus Variablen für x und y Koordinaten) zurück. Dabei wird lediglich eine Instanzvariable des Spielobjektes abgefragt und zurückgegeben.
Die Klasse für Punkte implementiert u.a. eine Methode addMod(). In dieser wird ein übergebender Punkt, genauer gesagt seine x und y Koordinaten, zu dem angesprochenen Punkt addiert.
Jetzt gibt es in dem Beispiel eine Zeile die schaut aus wie folgt:
Java:
frosch.getDeltaPos().addMod(new Punkt(-1,0));
Was passiert da jetzt genau? Ich verstehe soviel, dass vom Objekt frosch die Methode getDeltaPos() aufgerufen wird. Soweit so gut, es kommt also eine Instanzvariable der Klasse Punkt vom frosch zurück.
Wird jetzt auf diese Instanzvariable der Klasse Punkt die Methode addMod() angewandt? Schreibt quasi an dieser Stelle eine Punkt-Methode direkt in mein Spielobjekt (bzw. die zugehörige Variable)?
Wäre es nicht logischer wenn ich etwas machen würde das grob so ausschaut:
Java:
Punkt a = new Punkt(frosch.x-1,frosch.y);
frosch.setDeltaPos(a);
Wie nennt sich das was da in dem oberen Beispiel passiert? Ist das eine Form von Methoden-Verkettung?
Vielen Dank schon mal für das Lösen meines Gehirnknotens!