Im кодирование игры в шахматы на самом деле. Я сделал шахматную доску с футлярами, и я могу получить координаты.Как объявить шахматные фигуры в шахматной игре?
Мой вопрос: Как я могу сделать (пример) в пешки класс с его атрибутами (цвета и т.д ..) для моей игры.
Спасибо всем!
Мой код на самом деле:
package coordboutons;
import java.awt.Color;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.EventQueue;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class CoordBoutons extends JFrame {
CoordBoutons() {
super("GridLayout");
setDefaultCloseOperation(EXIT_ON_CLOSE);
Container contenant = getContentPane();
contenant.setLayout(new GridLayout(8, 8));
for (int i = 0; i < 8; i++) {
for (int j = 0; j < 8; j++) {
contenant.add(new CaseEchiquier(i, j));
}
}
pack();
setVisible(true);
}
class CaseEchiquier extends JPanel {
private int lin, col;
private char column;
CaseEchiquier(int i, int j) {
lin = i;
col = j;
setPreferredSize(new Dimension(80, 75));
setBackground((i + j) % 2 == 0 ? Color.WHITE : Color.GRAY);
addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent e){
CaseEchiquier current =(CaseEchiquier)e.getSource(); // get the object that the user pressed
int linX = current.getLin();
int colY = current.getCol();
System.out.println(lin+" "+col);
}
});
}
public int getCol() {
return col;
}
public int getLin() {
return lin;
}
}
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
JFrame.setDefaultLookAndFeelDecorated(true);
CoordBoutons coordBoutons = new CoordBoutons();
}
});
}
}
Классы и объекты в основном ориентированы на объектно-ориентированное программирование. Вы уже создали и создали несколько экземпляров в вашем примере. Создание нового класса 'Pawn' - это то же самое. – NilsH
Я бы порекомендовал прочитать о java 'enum'. Это выглядит лучше, чем классы, поскольку они исходят из ограниченного набора опций. – Pureferret