Hello, what i need here is that, The guide tells us to creat 4 Classes, the code
ID: 3532657 • Letter: H
Question
Hello, what i need here is that, The guide tells us to creat 4 Classes, the code i have there are 5 Classes. Can you guys help me with the process that summing those 5 classes up into 4 classes are directed. I will first give you the guide then i will post the codes i have. The codes are working, all i need to do is have 4 classes instead of 5 classes with that extra Demo class. You can also see the UML diagrams at the bottom of the screen.
The intro is here:
Design a set of classes that work together to simulate a police officer issuing a parking ticket.
1)The ParkedCar Class: This class should simulate a parked car. The Class's responsibilities are as follows:
- To know the car's make, model, color, license number, and the number of minutes that the car has been parked.
2)The ParkingMeter Class: This class should simulate a parking meter. The class's only responsibility is as follows:
-To knwo the number of minutes of parking time that has been purchased.
3)The ParkingTicket Class: This class should simulate a parking ticket. The class's responsibilites 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
4)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 car's time has expired.
The codes i have are here,
DEMO.JAVA
import java.util.Scanner;
public class Demo
{
public static void main(String[] args)
{
String umake; //holds make of parked car
String umodel; //holds model of parked car
String ucolor; // holds color of parked car
String uname; // holds officer name
String ulicenseNumber; //holds car license plate number
String ubadgeNumber; //holds officers badge number
int utimeParked; //holds time that car has been parked
int utimePurchased; //hold time purchased at parking meter
int difference;
Scanner keyboard = new Scanner(System.in);
System.out.println("Car Data: ");
//get car's make
System.out.print("Enter Make: ");
umake = keyboard.nextLine();
//get car's model
System.out.print("Enter Model: ");
umodel = keyboard.nextLine();
//get car's color
System.out.print("Enter Color: ");
ucolor = keyboard.nextLine();
//get cars license plate number
System.out.print("Enter License Number: ");
ulicenseNumber = keyboard.nextLine();
//get time parked
System.out.print("Enter Time Parked: ");
utimeParked = keyboard.nextInt();
System.out.println("Officer Data: ");
//get officer's name
keyboard.nextLine();
System.out.print("Enter Officer: ");
uname = keyboard.nextLine();
//get officer's badge number
System.out.print("Enter Badge Number: ");
ubadgeNumber = keyboard.nextLine();
//get time purchased
System.out.print("Enter Time Purchased: ");
utimePurchased = keyboard.nextInt();
System.out.print(" ");
parkedCar carTest = new parkedCar(umake, umodel, ucolor, ulicenseNumber, utimeParked);
parkingMeter meterTest = new parkingMeter (utimePurchased);
policeOfficer officerTest = new policeOfficer (uname, ubadgeNumber);
parkingTicket ticketTest = new parkingTicket(carTest, officerTest);
System.out.println(ticketTest);
System.out.println(meterTest);
difference = utimeParked - utimePurchased;
if(difference <= 0)
System.out.println("No ticket! ");
else if(difference > 0 && difference <= 60)
System.out.println(" Fine: $25 ");
else if(difference > 60 && difference <= 120)
System.out.println("Fine: $35 ");
else if(difference > 120 && difference <= 180)
System.out.println("Fine: $45 ");
else if(difference > 180 && difference <= 240)
System.out.println("Fine: $55 ");
else if(difference > 240 && difference <= 300)
System.out.println("Fine: $65 ");
else if(difference > 300 && difference <= 360)
System.out.println("Fine: $75 ");
else if(difference > 360 && difference <= 420)
System.out.println("Fine: $85 ");
else if(difference > 420 && difference <= 480)
System.out.println("Fine: $95 ");
}
}
----------------
---------------parkedCar.java------------
public class parkedCar
{
private String make;
private String model;
private String color;
private String licenseNumber;
private int minutesParked;
/**
This constructor initializes the make, model, color, licenseNumber, and minutes fields.
*/
public parkedCar(String mk, String mod, String col, String lic, int min)
{
make = mk;
model = mod;
color = col;
licenseNumber = lic;
minutesParked = min;
}
public parkedCar(parkedCar car2)
{
make = car2.make;
model = car2.model;
color = car2.color;
licenseNumber = car2.licenseNumber;
minutesParked = car2.minutesParked;
}
public void set(String mk, String mod, String col, String lic, int min)
{
make = mk;
model = mod;
color = col;
licenseNumber = lic;
minutesParked = min;
}
public String getMake()
{
return make;
}
public String getModel()
{
return model;
}
public String getColor()
{
return color;
}
public String getlicenseNumber()
{
return licenseNumber;
}
public int getMinutesParked()
{
return minutesParked;
}
public String toString()
{
String str = "Make: "+ make
+ " Model: "+ model
+ " Color: "+ color
+ " License Number: "+ licenseNumber
+ " Minutes Parked: "+ minutesParked + " ";
return str;
}
}
--------------
-------parkingMeter.java-------------
public class parkingMeter
{
private int minutesPurchased;
/**
constructor initializes minutes purchased
*/
public parkingMeter(int m)
{
minutesPurchased = m;
}
public void set(int m)
{
minutesPurchased = m;
}
public int getMinutesPurchased()
{
return minutesPurchased;
}
public String toString()
{
String str = "Minutes purchased: "+ minutesPurchased + " ";
return str;
}
}
---------------
---------policeOfficer.java-------------
public class policeOfficer
{
private String name;
private String badgeNumber;
/**
constructor initializes police officer name and badge number
*/
public policeOfficer (String n, String bn)
{
name = n;
badgeNumber = bn;
}
public policeOfficer (policeOfficer officer2)
{
name = officer2.getName();
badgeNumber = officer2.getBadgeNumber();
}
public void setOfficerName (String n)
{
name = n;
}
public void setBadgeNumber(String bn)
{
badgeNumber = bn;
}
public String getName ()
{
return name;
}
public String getBadgeNumber()
{
return badgeNumber;
}
public String toString()
{
String str = "Officer Name: "+ name
+ " Badge Number: "+ badgeNumber;
return str;
}
}
----------------
-----parkingTicket.java-------------
class parkingTicket
{
private parkedCar car;
private policeOfficer officer;
/**
contructor initializes parked car and policeOfficer
*/
public parkingTicket(parkedCar aCar, policeOfficer anOfficer)
{
car = new parkedCar(aCar);
officer = new policeOfficer(anOfficer);
}
public parkedCar getParkedCar()
{
return new parkedCar(car);
}
public policeOfficer getpoliceOfficer()
{
return new policeOfficer(officer);
}
public String toString()
{
String str = "Car Information: "+ car
+ " Reporting Officer Information: "+ officer;
return str;
}
}
------------------------------
UML DIAGRAMS
Explanation / Answer
Here you go :
import java.util.Scanner;
parkedCar.java
public class parkedCar
{
private String make;
private String model;
private String color;
private String licenseNumber;
private int minutesParked;
/**
This constructor initializes the make, model, color, licenseNumber, and minutes fields.
*/
public parkedCar(String mk, String mod, String col, String lic, int min)
{
make = mk;
model = mod;
color = col;
licenseNumber = lic;
minutesParked = min;
}
public parkedCar(parkedCar car2)
{
make = car2.make;
model = car2.model;
color = car2.color;
licenseNumber = car2.licenseNumber;
minutesParked = car2.minutesParked;
}
public void set(String mk, String mod, String col, String lic, int min)
{
make = mk;
model = mod;
color = col;
licenseNumber = lic;
minutesParked = min;
}
public String getMake()
{
return make;
}
public String getModel()
{
return model;
}
public String getColor()
{
return color;
}
public String getlicenseNumber()
{
return licenseNumber;
}
public int getMinutesParked()
{
return minutesParked;
}
public String toString()
{
String str = "Make: "+ make
+ " Model: "+ model
+ " Color: "+ color
+ " License Number: "+ licenseNumber
+ " Minutes Parked: "+ minutesParked + " ";
return str;
}
public static void main(String[] args)
{
String umake; //holds make of parked car
String umodel; //holds model of parked car
String ucolor; // holds color of parked car
String uname; // holds officer name
String ulicenseNumber; //holds car license plate number
String ubadgeNumber; //holds officers badge number
int utimeParked; //holds time that car has been parked
int utimePurchased; //hold time purchased at parking meter
int difference;
Scanner keyboard = new Scanner(System.in);
System.out.println("Car Data: ");
//get car's make
System.out.print("Enter Make: ");
umake = keyboard.nextLine();
//get car's model
System.out.print("Enter Model: ");
umodel = keyboard.nextLine();
//get car's color
System.out.print("Enter Color: ");
ucolor = keyboard.nextLine();
//get cars license plate number
System.out.print("Enter License Number: ");
ulicenseNumber = keyboard.nextLine();
//get time parked
System.out.print("Enter Time Parked: ");
utimeParked = keyboard.nextInt();
System.out.println("Officer Data: ");
//get officer's name
keyboard.nextLine();
System.out.print("Enter Officer: ");
uname = keyboard.nextLine();
//get officer's badge number
System.out.print("Enter Badge Number: ");
ubadgeNumber = keyboard.nextLine();
//get time purchased
System.out.print("Enter Time Purchased: ");
utimePurchased = keyboard.nextInt();
System.out.print(" ");
parkedCar carTest = new parkedCar(umake, umodel, ucolor, ulicenseNumber, utimeParked);
parkingMeter meterTest = new parkingMeter (utimePurchased);
policeOfficer officerTest = new policeOfficer (uname, ubadgeNumber);
parkingTicket ticketTest = new parkingTicket(carTest, officerTest);
System.out.println(ticketTest);
System.out.println(meterTest);
difference = utimeParked - utimePurchased;
if(difference <= 0)
System.out.println("No ticket! ");
else if(difference > 0 && difference <= 60)
System.out.println(" Fine: $25 ");
else if(difference > 60 && difference <= 120)
System.out.println("Fine: $35 ");
else if(difference > 120 && difference <= 180)
System.out.println("Fine: $45 ");
else if(difference > 180 && difference <= 240)
System.out.println("Fine: $55 ");
else if(difference > 240 && difference <= 300)
System.out.println("Fine: $65 ");
else if(difference > 300 && difference <= 360)
System.out.println("Fine: $75 ");
else if(difference > 360 && difference <= 420)
System.out.println("Fine: $85 ");
else if(difference > 420 && difference <= 480)
System.out.println("Fine: $95 ");
}
}
=------------------------------------------------------
parkingMeter.java
public class parkingMeter
{
private int minutesPurchased;
/**
constructor initializes minutes purchased
*/
public parkingMeter(int m)
{
minutesPurchased = m;
}
public void set(int m)
{
minutesPurchased = m;
}
public int getMinutesPurchased()
{
return minutesPurchased;
}
public String toString()
{
String str = "Minutes purchased: "+ minutesPurchased + " ";
return str;
}
}
--------------------------------------------
parkingTicket.java
class parkingTicket
{
private parkedCar car;
private policeOfficer officer;
/**
contructor initializes parked car and policeOfficer
*/
public parkingTicket(parkedCar aCar, policeOfficer anOfficer)
{
car = new parkedCar(aCar);
officer = new policeOfficer(anOfficer);
}
public parkedCar getParkedCar()
{
return new parkedCar(car);
}
public policeOfficer getpoliceOfficer()
{
return new policeOfficer(officer);
}
public String toString()
{
String str = "Car Information: "+ car
+ " Reporting Officer Information: "+ officer;
return str;
}
}
-------------------------------------
policeOfficer.java
public class policeOfficer
{
private String name;
private String badgeNumber;
/**
constructor initializes police officer name and badge number
*/
public policeOfficer (String n, String bn)
{
name = n;
badgeNumber = bn;
}
public policeOfficer (policeOfficer officer2)
{
name = officer2.getName();
badgeNumber = officer2.getBadgeNumber();
}
public void setOfficerName (String n)
{
name = n;
}
public void setBadgeNumber(String bn)
{
badgeNumber = bn;
}
public String getName ()
{
return name;
}
public String getBadgeNumber()
{
return badgeNumber;
}
public String toString()
{
String str = "Officer Name: "+ name
+ " Badge Number: "+ badgeNumber;
return str;
}
}
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.