From a419bf1858d108bb2f4fd077225bd89040c2ba9b Mon Sep 17 00:00:00 2001 From: Fateme Azizi Date: Mon, 27 Apr 2026 06:30:40 +0330 Subject: [PATCH] implement ElectricCar.java --- src/main/java/org/model/ElectricCar.java | 45 ++++++++++++++++++++---- 1 file changed, 38 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/model/ElectricCar.java b/src/main/java/org/model/ElectricCar.java index 2ee9bd8..63e2d62 100644 --- a/src/main/java/org/model/ElectricCar.java +++ b/src/main/java/org/model/ElectricCar.java @@ -27,13 +27,44 @@ public class ElectricCar extends Car implements Chargeable { this.chargeLevel = chargeLevel; } - // TODO: Override getEnergyType() → return "Electric" - // TODO: Override showDetails() - // Call super.showDetails() - // Print battery capacity and charge level + @Override + public String getEnergyType() { + return "Electric"; + } - // TODO: Implement charge(double amount) - // Validate negative - // Cap at 100 + + @Override + public void showDetails() { + super.showDetails(); + System.out.println(" | battery capacity: " + batteryCapacity + + " | charge level: " + chargeLevel + ); + } + + + @Override + public void charge(double amount) { + if(amount<0) + System.out.println("amont cannot be negative"); + else + chargeLevel += amount; + + if(chargeLevel>100) + chargeLevel = 100; + } + + @Override + public boolean needsService(Vehicle v) { + if(v.getMileage()>8000) + return true; + + return false; + } + + @Override + public void performService() { + System.out.println("Battery system checked"); + chargeLevel = 100; + } }