Files
WS-03-advanced-oop/src/main/java/org/model/Car.java
T

38 lines
1.3 KiB
Java

package org.model;
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) {
//Call super constructor to initialize inherited fields from Vehicle
super(brand, model, year, mileage);
this.seats = seats;
}
//getEnergyType() → return "Unknown"
public String getEnergyType() {
return "Unknown";
}
//showDetails() to print brand, model, year, mileage, and number of seats
public void showDetails() {
System.out.println("Car Details:");
System.out.println("Brand:" + getBrand());
System.out.println("Model: " + getModel());
System.out.println("Year: " + getYear());
System.out.println("Mileage:" + getMileage() + " km");
System.out.println("Seats: " + seats);
}
// Implement Serviceable.needsService(Vehicle v) -> Check if mileage > 10000
public boolean needsService(Vehicle v) {
return v.getMileage() > 10000;
}
//Implement Serviceable.performService() -> Print general service message
public void performService() {
System.out.println("General car service completed");
}
}