🚆 IRCTC Train Ticket Booking System (Java)
A console-based Java application that simulates an IRCTC-like train ticket booking system. This project demonstrates Object-Oriented Programming (OOP) concepts such as classes, objects, encapsulation, and service layers.
📌 Features
User registration and management
View available trains
Book train tickets
Generate ticket details
Modular service-based architecture
Simple and beginner-friendly Java code
🛠️ Technologies Used
Java (JDK 8+)
OOP Principles
Console-based UI
📂 Project Structure IRCTC-Train-Booking-System/ │ ├── IRCTCAPP.java # Main application entry point ├── User.java # User model ├── Train.java # Train model ├── Ticket.java # Ticket model ├── UserService.java # User-related operations ├── Bookingservice.java # Ticket booking logic └── README.md # Project documentation
Clone the repository:
git clone https://github.com/your-username/IRCTC-Train-Booking-System.git
Navigate to the project directory:
cd IRCTC-Train-Booking-System
Compile the Java files:
javac *.java
Run the application:
java IRCTCAPP
📖 How It Works
The application starts from IRCTCAPP.java
Users can be created using UserService
Train details are stored using the Train class
Ticket booking logic is handled by Bookingservice
Ticket details are generated using the Ticket class
🎯 Learning Outcomes
Understanding Java OOP design
Separation of concerns using service classes
Real-world application simulation
Improved logical and problem-solving skills
🚀 Future Enhancements
Add database support (MySQL / JDBC)
Implement GUI using JavaFX
Add ticket cancellation feature
Improve validation and error handling
👨💻 Author
Dhruv Gupta 📘 Java Developer | Student
📄 License
This project is for educational purposes only.