Find Jobs
Hire Freelancers

Object Oriented Programming, GUI based Vehicle Rental Centre

$30-100 USD

Cancelled
Posted almost 20 years ago

$30-100 USD

Paid on delivery
Produce the design a GUI for an application to manage the vehicles held by the resource centre. This application should provide a windows based interface to allow the vehicles to be added, hired, returned, valeted (cars only), removed and checked for availability. It is also to provide various lists such as all available cars or vans, all vehicles borrowed by a particular hirer, etc. Functionality of the program: * user can add new vehicles with details * user can show details of vehicles * user can edit (appropriate) details of vehicles * user can remove vehicles from rental centre * user can hire and return a vehicle * allows convenient selection of vehicle to borrow/return without entering vehicle ID. * user can list available vehicles * Can save and reload vehicle data to a file as serialised data * user can list vehicles <!-- --> * all available vehicles or available by type * list vehicles by other attributes, e.g. hired by a particular hirer or having some minimum specification ## Deliverables The following is what is required for each class of vehicle: * `Vehicle` * **attributes**: * `regNum` - a `String`; the vehicle registration number * `model` - a `String` * `milage` - an `int` the recorded milage * `hirer` - an `int` holding identiy number of hirer, 0 = not hired * **methods**: * `isAvailable` - returns a boolean result; true if vehicle is currently available, that is not hired at the moment, (hirer==0) * `hire` - has hirer number as parameter; records new hirer but only if it is currently available * `bringBack` - has miles driven as parameter; records that no-one is now borrowing this vehicle and adds miles driven to milage * `toString` returns suitably formatted String giving details of all the vehicles attributes * a `get` method for all attributes * `Car` * **attributes**: * `maxPassengers` - an `int` the max number of passengers * `valetted` - a `boolean` true if the car has been valetted since the last hire (and initially), otherwise false * **methods**: * `valet` sets `valetted` to true * `bringBack` additionally sets `valetted` to false * `toString` returns suitably formatted String giving details of all the cars attributes * `get` for above attributes * `Van` * **attributes**: * `capacity` - an `int` max load in Kg * **methods**: * `toString` returns suitably formatted String giving details of all the vans attributes * `get` for above attributes The classes should also have appropriate constructor(s). This is the Assignment Criteria: 1. Can edit and remove vehicles from hire centre, upto **10 points** * can record the valetting of a car * unvaletted cars are shown as not avaialable and can not be hired * can edit (appropriate) details of vehicles * can remove vehicles * only permits edit or removal if vehicle not on hire * unvaletted cars may be edited or removed 2. Collection class, upto **10 points** * collection class to provide convenient access methods * collection class based on a suitable standard Java class * includes means of iterating over all contents * makes appropriate use of collection class 3. Implements persistence, upto **10 points** * can save and reload vehicle data to a file as serialised data * allows user to select data file to load from or save to with file dialogue 4. Quality of coding upto, **10 points** * very well written code (good variable names, indentation fully reflects structure) * good javadoc comments throughout * `Vehicle` is an abstract class 5. Further listing options are implemented, upto **10 points** * listings based on other general attributes e.g. all available vehicles by type * listings based on criteria by user input, e.g. by hirer or having some minimum specification, such as seating capacity * can select vehicle from lists for all functions (hire, return, etc.) 6. Structure of interface and application logic, upto **10 points** * interface and application logic are in separate classes * interface structured using auxilary classes for common elements ## Platform windows 2000 or above with Textpad 4 with java or above
Project ID: 3221587

About the project

9 proposals
Remote project
Active 15 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
9 freelancers are bidding on average $54 USD for this job
User Avatar
See private message.
$63.75 USD in 5 days
4.8 (119 reviews)
7.0
7.0
User Avatar
See private message.
$85 USD in 5 days
5.0 (51 reviews)
5.3
5.3
User Avatar
See private message.
$63.75 USD in 5 days
5.0 (6 reviews)
4.1
4.1
User Avatar
See private message.
$34 USD in 5 days
5.0 (16 reviews)
3.8
3.8
User Avatar
See private message.
$72.25 USD in 5 days
4.7 (22 reviews)
3.4
3.4
User Avatar
See private message.
$8.50 USD in 5 days
5.0 (9 reviews)
1.6
1.6
User Avatar
See private message.
$42.50 USD in 5 days
0.0 (0 reviews)
0.0
0.0
User Avatar
See private message.
$85 USD in 5 days
0.0 (0 reviews)
0.0
0.0
User Avatar
See private message.
$29.75 USD in 5 days
0.0 (0 reviews)
0.0
0.0

About the client

Flag of UNITED KINGDOM
United Kingdom
0.0
0
Member since May 22, 2004

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759) & Freelancer Online India Private Limited (CIN U93000HR2011FTC043854)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.