У меня есть метод выдачи парковочного талона в классе моего офицера,
public ParkingTicket issueParkingTicket(ParkedCar car,ParkingMeter meter){
if(isParkingTimeExpired(car,meter) == true){
ParkingTicket ticket = new ParkingTicket(officerName,officerBadgeNumber,car.getLicensePlateNumber(),calculateFine(car,meter));
ticket.displayDetails();
return ticket;
} else
{ return null;
}
}
Меня попросили изменить его так, чтобы он ничего не возвращал, поэтому я сделал его недействительным, поэтому я сделал это таким образом
public void issueParkingTicket(ParkedCar car,ParkingMeter meter){
if(isParkingTimeExpired(car,meter) == true){
ParkingTicket ticket = new ParkingTicket(officerName,officerBadgeNumber,car.getLicensePlateNumber(),calculateFine(car,meter));
ticketList.add(ticket);
ticket.displayDetails();
}
Теперь в моем главном классе драйверов мне нужно создать объект Officer, но, поскольку мне пришлось сделать метод void, чтобы ничего не возвращалось, я получаю сообщение об ошибке, в котором void нельзя преобразовать в ParkingTicket
, если я уберу myCar1,myMeter1
из скобок, я получаю ошибку, сообщающую, что требуются аргументы ParkedCar, ParkingMeter. Как я могу сделать так, чтобы я не получил ошибку, и созданный объект офицера мог выдать парковочный талон?
public class Driver
{
main method
public static void main(String [] args){
ParkedCar myCar1 = new ParkedCar("Fred","toyota",2013,"Z1234",25);
myCar1.displayDetails();
ParkingMeter myMeter1 = new ParkingMeter("SYDNEY",true,0.15,70);
myMeter1.displayDetails();
PoliceOfficer officer1 = new PoliceOfficer("John doe","DMX1234");
ParkingTicket ticket = officer1.issueParkingTicket(myCar1,myMeter1);
Это источник моей ошибки ParkingTicket ticket = officer1.issueParkingTicket(myCar1,myMeter1);