Heim >Java >javaLernprogramm >Wie verhindert die modifizierte Methode „move()', dass Sternobjekte den Rahmen verlassen?

Wie verhindert die modifizierte Methode „move()', dass Sternobjekte den Rahmen verlassen?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-29 07:11:09350Durchsuche

How Does the Modified `move()` Method Prevent Star Objects from Leaving the Frame?

Die move()-Methode in der Star-Klasse wird verwendet, um die Sternobjekte auf dem Bildschirm zu verschieben. Die ursprüngliche Implementierung dieser Methode behandelte den Fall, dass sich der Stern außerhalb der Rahmengrenzen bewegen würde, nicht ordnungsgemäß. Dies könnte dazu führen, dass der Stern verschwindet oder sich mit anderen Sternen überlappt, was nicht das gewünschte Verhalten wäre. Die modifizierte Version der move()-Methode behebt dieses Problem, indem sie prüft, ob sich die Position des Sterns außerhalb der Rahmengrenzen befindet, und bei Bedarf die Bewegungsrichtung umkehrt. Dadurch wird sichergestellt, dass die Sterne immer innerhalb der Grenzen des Rahmens bleiben und sich nicht gegenseitig überlappen.

Hier ist die modifizierte Version der move()-Methode:

public void move() {
    if (location.x < 0 || location.x > frame.getContentPane().getWidth() - 20) {
        xIncr = -xIncr;
    }
    if (location.y < 0 || location.y > frame.getContentPane().getHeight() - 20) {
        yIncr = -yIncr;
    }
    translate(xIncr, yIncr);
    location.setLocation(location.x + xIncr, location.y + yIncr);
}

In In dieser modifizierten Version haben wir Überprüfungen hinzugefügt, um festzustellen, ob sich die Position des Sterns außerhalb der Rahmengrenzen befindet. Wenn sich die Position des Sterns außerhalb der Rahmengrenzen befindet, kehren wir die Bewegungsrichtung um, sodass sich der Stern wieder in den Rahmen bewegt. Dadurch wird sichergestellt, dass die Sterne immer innerhalb der Grenzen des Rahmens bleiben und sich nicht gegenseitig überlappen.

Das obige ist der detaillierte Inhalt vonWie verhindert die modifizierte Methode „move()', dass Sternobjekte den Rahmen verlassen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn