Ich habe 3 separate Klassen in Java ist man für Logik, man malt, und das letzte ist für das Fenster.Rufe ich die anderen Klassen richtig an? Ich fühle mich wie das SnakeBoardDisplay sollte nur einmal erstellt werden
Fensterklassen, diese Klasse auch einen Board-Display und ergänzt die Fensterklasse
public SnakeWindow()
{
this.setTitle("Snake");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(win_wid, win_hei);
SnakeBoardDisplay dPanel = new SnakeBoardDisplay();
this.add(dPanel);
inintMenu();
this.setVisible(true);
setResizable(false);
}
public static void main(String[] args) {
new SnakeWindow();
}
Tafel Display-Klasse schaffen, schafft diese Klasse einen neuen Board-Display
Wo den richtigen Platz für diese Klasse ist aufgerufen und ausgeführt werden?
public SnakeBoardDisplay()
{
game = new SnakeGame();
tm.start();
addKeyListener(this);
setFocusable(true);
setFocusTraversalKeysEnabled(false);
}
public static void main(String[] args) {
new SnakeBoardDisplay();
}
Spielklasse
public SnakeGame()
{
init();
}
public void init()
{
for(int i = 0; i < tokens; i++)
{
int q = i;
q *= seperationDis;
tokensx[i] = CRDX-q;
tokensy[i] = CRDY;
}
sideCollision();
appleCollision();
snakeMover();
bodyCollision();
apple();
}
die Klassen Deklarieren
public class SnakeGame extends SnakeWindow {
public class SnakeBoardDisplay extends JPanel implements ActionListener, KeyListener{
public class SnakeWindow extends JFrame {
Sie haben zwei Hauptmethoden. Was ist los? – Gendarme
Ohne die Hauptmethode in der Anzeigeklasse bekomme ich einen Fehler und sage, dass mir die Hauptmethode fehlt. – matt
Haben Sie diese Klassen jemals deklariert? – sebenalern