This is a simple console-based 1:1 chat application developed in Java using Socket Programming, Multithreading, and Object-Oriented Programming (OOP) principles. It simulates real-time messaging between two clients via a server.
This project was created to gain hands-on experience with low-level network programming and better understand how backend communication, client-server architecture, and message synchronization work under the hood.
- โ Real-time 1:1 messaging between two clients
- โ Server acts as a relay between clients
- โ Multi-threaded server handles multiple client connections
- โ Clean object-oriented design
- โ Console-based interface (easy to extend with GUI)
- Java Sockets
- Java Threads
- OOP Concepts (Encapsulation, Abstraction)
- Exception Handling