diff --git a/src/main/java/org/model/GasCar.java b/src/main/java/org/model/GasCar.java index 2109f93..a129106 100644 --- a/src/main/java/org/model/GasCar.java +++ b/src/main/java/org/model/GasCar.java @@ -27,13 +27,49 @@ public class GasCar extends Car implements Refuelable { this.fuelType = fuelType; } - // TODO: Override getEnergyType() → return fuelType + " (Gas)" + @Override + public String getEnergyType() + { + return fuelType + "(Gas)"; + } - // TODO: Implement refuel(double amount) - // Validate amount - // Cap at 100 + public void refuel(double amount) + { + if (amount < 0) + { + System.out.println("Cannot refuel negative amount!"); + return; + } + this.fuelLevel += amount; + if (this.fuelLevel > 100) + { + this.fuelLevel = 100; + } + System.out.println("Refueled. Current fuel level: " + this.fuelLevel); + } + + @Override + public void showDetails() + { + super.showDetails(); + System.out.println("fuel type: " + this.fuelType + " | fuel level: " + this.fuelLevel); + } + + @Override + public boolean needsService(Vehicle v) + { + if (v.getMileage() > 12000) + { + return true; + } + return false; + } + + @Override + public void performService() + { + System.out.println("Engine oil changed"); + this.fuelLevel = 100; + } - // TODO: Override showDetails() - // Call super.showDetails() - // Print fuel level and fuel type }