diff --git a/src/main/java/org/model/GasCar.java b/src/main/java/org/model/GasCar.java index 2109f93..e4c5b63 100644 --- a/src/main/java/org/model/GasCar.java +++ b/src/main/java/org/model/GasCar.java @@ -27,13 +27,47 @@ public class GasCar extends Car implements Refuelable { this.fuelType = fuelType; } - // TODO: Override getEnergyType() → return fuelType + " (Gas)" - // TODO: Implement refuel(double amount) - // Validate amount - // Cap at 100 + @Override + public String getEnergyType() { + return (fuelType + " (Gas)"); + } - // TODO: Override showDetails() - // Call super.showDetails() - // Print fuel level and fuel type + + @Override + public void refuel(double amount) { + if(amount<0) { + System.out.println("amount cannot be negative"); + } + else { + fuelLevel += amount; + } + + if(fuelLevel>100) { + fuelLevel = 100; + } + } + + + @Override + public void showDetails() { + super.showDetails(); + System.out.println(" | fuel level: " + fuelLevel + + " | fuel type: " + fuelType + ); + } + + @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; + } }