A comprehensive Java practice repository covering fundamental to advanced topics including multithreading, network programming, and data structures with practical mini-projects.
├── Collection Framework/ │ ├── HashMap & HashSet implementations │ └── Student Management System (Serialization + File I/O) ├── Multithreading/ │ ├── Inter-Thread Communication │ ├── Monitor and Synchronized blocks │ ├── Producer-Consumer pattern │ └── Multithreaded ATM (ReentrantLock) ├── Network Programming/ │ ├── TCP Communication (Reverse Echo Server) │ ├── UDP Communication (Datagram) │ └── Multi-threaded Server └── Others/ └── Miscellaneous exercises - HashMap & HashSet implementations
- Student Management System - Object persistence with Serialization and File I/O
- Inter-Thread Communication
- Monitor and Synchronized blocks
- Producer-Consumer pattern
- Multithreaded ATM - Thread-safe operations with ReentrantLock
- TCP Server - Reverse Echo implementation
- UDP Communication - Datagram programming
- Multi-client Server - Handling concurrent connections
| Category | Skills |
|---|---|
| OOP | Classes, Inheritance, Encapsulation |
| Concurrency | Thread, Runnable, synchronized, ReentrantLock |
| Persistence | Serializable, File I/O |
| Networking | TCP/UDP Socket programming |
| Data Structures | HashMap, HashSet, Collections |
# Compile Java files javac Multithreading/ATM/*.java # Run the program java Multithreading.ATM.MainEhsanul Haque Siam - @EhsanulHaqueSiam
MIT License