A simple chess game in JAVA
Object-Oriented Programming (OOP): The project followed OOP principles, including encapsulation, inheritance, and polymorphism, to model chess pieces and game logic.
GUI (Graphical User Interface): The game featured a GUI for user interaction, allowing players to visually engage with the chessboard.
LinkedList: Java's LinkedList data structure was employed to manage and store chess pieces efficiently.
Piece: In the context of chess, a "piece" refers to any of the different types of chessmen (e.g., king, queen, rook, knight, bishop, pawn) that move and capture in distinct ways.
Mouse Listeners: Mouse listeners were used to capture mouse events such as clicks, dragging, and releases for interactive piece movement.
Chessboard: The chessboard is the 8x8 grid on which chess is played, consisting of alternating dark and light squares.
Piece Movement: The project involved implementing chess piece movement rules, including legal moves and capturing opponent pieces.
Chess Notation: Chess notation is a standardized system used to record and describe chess games and moves, although it wasn't explicitly mentioned in the code.
Piece Capture: Chess pieces can capture opponent pieces by moving to their positions, removing them from the board.
Graphics: The project required graphical rendering and manipulation of chess pieces on the GUI.
Piece Attributes: Chess pieces have specific attributes, such as color (white or black), name (e.g., king, queen), and position (x, y).
Game Logic: The code implemented the rules and logic of chess gameplay, including check, checkmate, castling, and pawn promotion.