Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

56 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

RoyalRentals - Vehicle Leasing Management System

A Java-based console application designed to manage vehicle leasing operations for "RoyalRentals." This system allows employees to manage a fleet of vehicles, maintain a client registry, and process lease agreements and returns using a text-based interface.

πŸ“– Project Overview

This project implements a vehicle management system using Polymorphism, Inheritance, and Array manipulation. It handles three distinct packages (Client, Driver, Vehicles) to separate logic for vehicle attributes, client information, and the main execution driver.

Key Features

  • Fleet Management:
    • Add, delete, and update vehicles (Electric Trucks, Electric Cars, Diesel Trucks, Gasoline Cars).
    • List all vehicles by category.
    • Identify specific vehicle stats (e.g., truck with the largest capacity).
  • Client Management:
    • Register new clients.
    • Edit existing client details.
    • Remove clients from the system.
  • Leasing Operations:
    • Lease a specific vehicle to a registered client.
    • Process vehicle returns.
    • View all active leases for a specific client.
    • View all currently leased vehicles across the company.
  • Dual Modes:
    • Interactive Mode: User inputs data manually via the console.
    • Pre-set Scenario: Runs a hard-coded simulation of the leasing process.

πŸ“‚ Project Structure

The project is organized into three main packages within the src directory:

src/
β”œβ”€β”€ Client/
β”‚   β”œβ”€β”€ Client.java           # Client attributes (ID, Name)
β”‚   β”œβ”€β”€ Lease.java            # Lease object definition
β”‚   └── LeasingService.java   # Logic for handling leases
β”œβ”€β”€ Driver/
β”‚   └── Driver.java           # Main entry point (Menu & User Input)
β”œβ”€β”€ Vehicles/
β”‚   β”œβ”€β”€ Vehicle.java          # Abstract base class
β”‚   β”œβ”€β”€ Electric_Car.java     # Subclass
β”‚   β”œβ”€β”€ Electric_Truck.java   # Subclass
β”‚   β”œβ”€β”€ Gasoline_Car.java     # Subclass
β”‚   └── Diesel_Truck.java     # Subclass
└── settings.json             # IDE Configuration

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages