package org.model; /* * Abstract base class for all vehicles. * This class DOES NOT implement Serviceable. * Service behavior will be defined in concrete subclasses. */ public abstract class Vehicle { private String brand; private String model; private int year; private double mileage; public Vehicle(String brand, String model, int year, double mileage) { this.brand = brand; this.model = model; this.year = year; this.mileage = mileage; } // TODO: Create getters for all fields public String GetBrand() { return this.brand ; } public String GetModel() { return this.model ; } public int GetYear() { return this.year ; } public double GetMileage() { return this.mileage ; } // TODO: Implement addMileage(double km) public void AddMileage(double km) { if (km < 0 ) { System.out.println("error !") ; } else { this.mileage = this.mileage + km ; } } // If km is negative → print error // Otherwise increase mileage // TODO: Declare abstract method getEnergyType() public abstract String getEnergyType(); public void basicInfo() { System.out.println( year + " " + brand + " " + model + " | Mileage: " + mileage + " | Energy: " + getEnergyType() ); } public abstract void showDetails(); }