59 lines
1.5 KiB
Java
59 lines
1.5 KiB
Java
package org.model;
|
|
|
|
/*
|
|
* Car extends Vehicle.
|
|
* This class SHOULD implement Serviceable.
|
|
*
|
|
* Service logic for Car:
|
|
* - needsService(): return true if mileage > 10,000
|
|
* - performService(): print "General car service completed"
|
|
*/
|
|
|
|
import org.behavior.Serviceable;
|
|
|
|
public abstract class Car extends Vehicle implements Serviceable {
|
|
|
|
private int seats;
|
|
|
|
public Car(String brand, String model, int year,
|
|
double mileage, int seats) {
|
|
|
|
// TODO: Call super constructor
|
|
this.seats = seats;
|
|
super(brand,model,year,mileage);
|
|
}
|
|
|
|
// TODO: Override getEnergyType() → return "Unknown"
|
|
@Override
|
|
public String getEnergyType() {return "Unknown";}
|
|
// TODO: Override showDetails()
|
|
// Print brand, model, year, mileage, and number of seats
|
|
@Override
|
|
public void showDetails(){
|
|
System.out.println(
|
|
getYear()+ " " + getBrand() + " " + getModel() +
|
|
" | Mileage: " + getMileage() +
|
|
" | Seats: " + seats
|
|
);
|
|
}
|
|
/*
|
|
* Implement Serviceable methods:
|
|
*
|
|
* needsService(Vehicle v):
|
|
* - Check the mileage of the current car
|
|
* - If mileage > 10000 return true
|
|
* - Otherwise return false
|
|
*
|
|
* performService():
|
|
* - Print: "General car service completed"
|
|
*/
|
|
|
|
public boolean needsService(Vehicle v){
|
|
return v.getMileage()>10000;
|
|
}
|
|
|
|
public void performService(Vehicle v){
|
|
System.out.println("General car service completed");
|
|
}
|
|
}
|