A Vehicle Rental System is an application that simplifies vehicle renting for customers and companies. Users can view vehicles, check prices, and book online, while the system automatically manages vehicle data, availability, customers, bookings, and payments, reducing manual work, minimizing errors, and improving overall efficiency.
This project is mainly built for learning OOP concepts and understanding how abstraction, inheritance, encapsulation, and composition work together in a practical application.
- View available vehicles
- Rent cars and bikes
- Return rented vehicles
- Automatic rent calculation
- Invoice generation
- Console-based interactive menu
- Simple and beginner-friendly design
- Abstraction –
PersonandVehicleabstract classes - Inheritance –
Customer,Car, andBikeextend base classes - Encapsulation – Private fields with controlled access
- Polymorphism – Method overriding (
getType,getRole) - Composition –
RentalStoremanages vehicles and rentals
- Language: Java
- Concepts: Core Java, OOP
- Interface: Console / Command Line
- Tools: VS Code / IntelliJ / Eclipse
RentWise/ └── RentVehicles.java
javac RentVehicles.java