Tic-Tac-Toe is a console-based Java mini-project built using Core Java and OOP principles. It demonstrates abstraction and inheritance by defining a common Player class and extending it for HumanPlayer and AIPlayer. The program allows a user to play against the computer, displaying the board after each move and declaring the result (win or draw). This project shows a practical implementation of Java classes, methods, and logic flow β ideal for beginners and core Java learners.
π‘ Features
β Two-player mode (Human vs AI) β Intelligent input checking β Displays current board after every move β Declares winner or draw clearly β Object-Oriented Design (OOP used properly)
π§ Concepts Used
Abstraction (Player class)
Inheritance (HumanPlayer, AIPlayer)
Polymorphism (makeMove() implementation)
Encapsulation (board access via methods)
Loops and conditionals
Arrays
π§© Project Structure (Linked Style)
Hereβs how your Java files are connected:
TicTacToe/ β βββ LaunchGame.java β Main class (starts the game) βββ TicTacToe.java β Game board logic + win/draw checks βββ Player.java β Abstract parent class for all players