0% found this document useful (0 votes)
2 views

Java (1)[1] (1)

The document outlines a Java mini project focused on creating a chess game, detailing team contributions in areas such as GUI design, game logic, AI features, and persistence. It explains the implementation of chess rules, OOP concepts like encapsulation and inheritance, and presents a UML diagram. The final product is a fully functional chess game with a user interface and various game management features.

Uploaded by

adityakundu984
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

Java (1)[1] (1)

The document outlines a Java mini project focused on creating a chess game, detailing team contributions in areas such as GUI design, game logic, AI features, and persistence. It explains the implementation of chess rules, OOP concepts like encapsulation and inheritance, and presents a UML diagram. The final product is a fully functional chess game with a user interface and various game management features.

Uploaded by

adityakundu984
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 9

JAVA MINI PROJECT

CHESS BOARD

BL.SC.U4AIE24046 - Samarth C Gowda


BL.SC.U4AIE24040 - Abitej Reddy
BL.SC.U4AIE24004 – Aditya Kundu
BL.SC.U4AIE24028 – Nachiket Pravin Saonerkar
Overview of our
hat is Chess and how we implemented it in our project
Presentation
2. UML Diagram
3. OOPS concepts being used in our
project
4. GUI design of our code and
the results.
Contributions
Nachiket: GUI & Core InfrastructureMenu system implementationBoard rendering and themingCoordinate display
toggleTimer system integrationUI event handling

Aditya: Game Logic & ValidationChess piece movement rulesCheck/checkmate detectionMove history and
undo/redoPawn promotion handlingStalemate detection

Samarth: AI & Advanced FeaturesRandom move AI implementationHint system developmentChess960


initializationMove highlightingStatus message updates

Abitej: Persistence & ConfigurationGame save/load functionalityBoard state serializationTimer configuration


dialogError handling for I/OAbout/help documentation
What is Chess?

o Chess is a two-player strategy game played on an 8×8 board where each player controls 16 pieces
(king, queen, rooks, bishops, knights, and pawns).
o The goal is to checkmate your opponent’s king, meaning the king is under attack and can't escape
capture.
o It’s a game of tactics, planning, and foresight — often called the "game of kings" because it mixes
logic, creativity, and strategy

How We Implemented Chess in Our Project?

o Use classes for pieces and extend them for different types like King, Queen, and Pawn.
o Create a Board class with a 2D array of Piece objects to represent the chessboard.
o Implement movement logic within each piece class to validate their moves.
o Create a Game Manager class to handle turns, move validation, and check/checkmate detection.
o Build a simple user interface to print the board and update it after each move.
UML DIAGRAM
USE DIAGRAM
OOPS concepts being used in the code
Encapsulation
• Piece class bundles color and type together and hides internal setup.
• setIcon method controls how board pieces are updated instead of allowing direct access.

Abstraction
• getImageIcon method hides the complexity of mapping pieces to images.
• initiateBoard method abstracts the detailed setup of the initial chessboard.

Inheritance
• ButtonListener class inherits behavior from the ActionListener interface.
• GUI components like JPanel and JButton inherit properties from AWT/Swing hierarchy.

Polymorphism
• actionPerformed method behaves differently based on which button triggers it.
• getImageIcon method behaves differently depending on the piece type it receives.
GUI Design Of Our Code
Challenges And What We Learned From Code.

•Implementing Complex Rules (e.g., Castling, Pawn Promotion)


•Efficient Move Validation
•Handling Special Chess Scenarios (Checkmate, Stalemate)

Final Outcome:

The final outcome is a fully functional chess game in Java with correct piece movement,
special moves, turn management, check/checkmate detection, and either a console or GUI
interface for player interaction.

You might also like