Use Java and please make it original as possible. Thank you. 8. Parking Ticket S
ID: 3903073 • Letter: U
Question
Use Java and please make it original as possible. Thank you.
8. Parking Ticket Simulator For this assignment you will design a set of classes that work together to simulate a police officer issuing a parking ticket. You should design the following classes: The Parkedcar Class: This class should simulate a parked car. The class's responsibili ties are as follows: - To know the car's make, model, color, license number, and the number of minutes that the car has been parked The ParkingMeter Class: This class should simulate a parking meter. The class's only responsibility is as follows - To know the number of minutes of parking time that has been purchased The ParkingTicket Class: This class should simulate a parking ticket. The class's responsibilities are as follows: - To report the make, model, color, and license number of the illegally parked car - To report the amount of the fine, which is $25 for the first hour or part of an hour that the car is illegally parked, plus $10 for every additional hour or part of an hour that the car is illegally parked To report the name and badge number of the police officer issuing the ticket The Policeofficer Class: This class should simulate a police officer inspecting parked cars. The class's responsibilities are as follows: - To know the police officer's name and badge number - To examine a Parkedcar object and a ParkingMeter object, and determine whether the car's time has expired - To issue a parking ticket (generate a ParkingTicket object) if the ca 's time has expired Write a program that demonstrates how these classes collaborateExplanation / Answer
Below is your code.Please do rate this answer positive, If i was able to help you. Let me know if you have any issues in comments
ParkerCar.java
public class ParkedCar
{
private String make, model, color, licenseNumber;
private int minutesParked;
ParkedCar(String make, String model, String color, String licenseNumber, int minutesParked)
{
setMake(make);
setModel(model);
setColor(color);
setLicenseNumber(licenseNumber);
setMinutesParked(minutesParked);
}
public String getColor()
{
return color;
}
public String getLicenseNumber()
{
return licenseNumber;
}
public String getMake()
{
return make;
}
public int getMinutesParked()
{
return minutesParked;
}
public String getModel()
{
return model;
}
public void setColor(String color)
{
this.color = color;
}
public void setLicenseNumber(String licenseNumber)
{
this.licenseNumber = licenseNumber;
}
public void setMake(String make)
{
this.make = make;
}
public void setMinutesParked(int minutesParked)
{
this.minutesParked = minutesParked;
}
public void setModel(String model)
{
this.model = model;
}
}
ParkingMeter.java
public class ParkingMeter
{
int parkingTimePurchased;
ParkingMeter(int parkingTimePurchased)
{
setParkingTimePurchased(parkingTimePurchased);
}
public int getParkingTimePurchased()
{
return parkingTimePurchased;
}
public void setParkingTimePurchased(int parkingTimePurchased)
{
this.parkingTimePurchased = parkingTimePurchased;
}
}
ParkingTicket.java
public class ParkingTicket
{
ParkedCar parkedCar;
ParkingMeter parkingMeter;
PoliceOfficer policeOfficer;
ParkingTicket(PoliceOfficer policeOfficer, ParkedCar parkedCar, ParkingMeter parkingMeter)
{
this.policeOfficer = policeOfficer;
this.parkedCar = parkedCar;
this.parkingMeter = parkingMeter;
}
public String getColor()
{
return parkedCar.getColor();
}
public Double getFine()
{
int illegalMinutes = parkedCar.getMinutesParked() - parkingMeter.getParkingTimePurchased();
double fine = 0;
if(illegalMinutes >= 60)
{
fine += 25.00;
illegalMinutes -= 60;
}
while(illegalMinutes > 0)
{
if(illegalMinutes >= 60)
{
fine += 10.00;
illegalMinutes -= 60;
}
else
{
fine += 10.00;
illegalMinutes -= illegalMinutes;
}
}
return fine;
}
public String getLicense()
{
return parkedCar.getLicenseNumber();
}
public String getMake()
{
return parkedCar.getMake();
}
public String getModel()
{
return parkedCar.getModel();
}
public String getOfficerBadgeNumber()
{
return policeOfficer.getBadgeNumber();
}
public String getOfficerName()
{
return policeOfficer.getName();
}
}
PoliceOfficer.java
public class PoliceOfficer
{
private String name, badgeNumber;
PoliceOfficer(String name, String badgeNumber)
{
this.name = name;
this.badgeNumber = badgeNumber;
}
public void examineParkedCar(ParkedCar parkedCar, ParkingMeter parkingMeter)
{
if(parkingMeter.getParkingTimePurchased() < parkedCar.getMinutesParked())
{
ParkingTicket parkingTicket = new ParkingTicket(this, parkedCar, parkingMeter);
System.out.println(parkedCar.getModel() + " is illegally parked. Ticket issued.");
// Prints parking ticket's information
System.out.println(" Parking ticket:");
System.out.println("Issuing officer's name: " + parkingTicket.getOfficerName());
System.out.println("Issuing officer's badge number: " + parkingTicket.getOfficerBadgeNumber());
System.out.println("Fine: $" + parkingTicket.getFine());
}
else
{
System.out.println(parkedCar.getModel() + " is legally parked.");
}
}
public String getBadgeNumber()
{
return badgeNumber;
}
public String getName()
{
return name;
}
}
Main.java
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.