Files
WS-03-advanced-oop/src/main/java/org/model/Car.java
T
2026-07-30 08:39:07 +03:30

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");
}
}