Apply the Object-Oriented concepts that you’ve learned (Abstraction, Encapsulation, Polymorphism, Interfaces, …etc.) to design a Parking Garage application and implement it

EBK JAVA PROGRAMMING
9th Edition
ISBN:9781337671385
Author:FARRELL
Publisher:FARRELL
Chapter14: Introduction To Swing Components
Section: Chapter Questions
Problem 10PE
icon
Related questions
Question

Apply the Object-Oriented concepts that you’ve learned (Abstraction, Encapsulation,
Polymorphism, Interfaces, …etc.) to design a Parking Garage application and implement it
using an object-oriented programming language. This application manages a parking space for
a configurable maximum number of vehicles. Each parking space (slot) defined with a dimension
(width and depth) The application must handle the following functions:
● Each vehicle shall be identified by a model name, unique identification number, Model year
and vehicle dimensions (vehicle width and depth).
● Park-in function that marks the arrival time of a vehicle if there is an available slot. The
application shall capture such time automatically from the system.
● During the park-in function the application shall pick a free slot based on the active slot
configuration. There are two configurations (i) first come first served slots i.e., the park-in
function will use the first free slot available from the parking garage slots. (ii) best-fit approach
where you need to find the slot with the minimum dimension to hold the vehicle.
● Park-out function that marks the departure time of a vehicle from the garage. The application
shall capture such time automatically from the system.
● Calculate the parking fees during the park-out based on the time-of-stay with an hourly rate
of 5 EGP.
● Calculate the total income as well as the total number of vehicles that used the parking
garage at any given point in time.
● Display the available parking slots
● Enrich your application with the capability to handle a set of exceptions that can happen
during user interaction and through any other calculations. The displayed error message for
exceptional behavior should be descriptive.

please write code in java by this class diagaram

park
vehicle
floor:arr
entry :am
exit :am
user
id:int
id: int
id_vehicle:int
number_phone
number:string
width:double
depth:double
type :string
add floors()
add entry ()
complete()
operations()
operations()
card_id
id :int
type car: string
entry time:double
exit time :double
spot parking
entry
parking spot :string
exit
search avaible (type)
make card ()
set entry time()
id :int
payment :bool
amount:double
payment ()
calc price()
set exit time()
floor
visa
no.floor:int
spots:arr string
name:string
card :int
pass :int
free spot()
add spots()
parking
spot()
payment
date:string
amount:double
sucses:bool
spot
operations()
name:string
free:bool
type: string
cash
money :double
get is free()
Transcribed Image Text:park vehicle floor:arr entry :am exit :am user id:int id: int id_vehicle:int number_phone number:string width:double depth:double type :string add floors() add entry () complete() operations() operations() card_id id :int type car: string entry time:double exit time :double spot parking entry parking spot :string exit search avaible (type) make card () set entry time() id :int payment :bool amount:double payment () calc price() set exit time() floor visa no.floor:int spots:arr string name:string card :int pass :int free spot() add spots() parking spot() payment date:string amount:double sucses:bool spot operations() name:string free:bool type: string cash money :double get is free()
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Module hierarchy chart
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT