From 161187a478c324b047e311521ed26dc0bed414c5 Mon Sep 17 00:00:00 2001 From: Matin-Ardestani Date: Tue, 28 Apr 2026 23:54:47 +0330 Subject: [PATCH] Complete ElectricCar class --- src/main/java/org/model/ElectricCar.java | 36 +++++++++++++++++++++--- 1 file changed, 32 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/model/ElectricCar.java b/src/main/java/org/model/ElectricCar.java index 2ee9bd8..2f50361 100644 --- a/src/main/java/org/model/ElectricCar.java +++ b/src/main/java/org/model/ElectricCar.java @@ -28,12 +28,40 @@ public class ElectricCar extends Car implements Chargeable { } // TODO: Override getEnergyType() → return "Electric" + @Override + public String getEnergyType() { + return "Electric"; + } + // TODO: Override showDetails() - // Call super.showDetails() - // Print battery capacity and charge level + @Override + public void showDetails() { + super.showDetails(); + System.out.printf(", Battery Capacity: %s, Charge Level: %s", + batteryCapacity, chargeLevel); + } // TODO: Implement charge(double amount) - // Validate negative - // Cap at 100 + @Override + public void charge(double amount) { + if(amount < 0){ + System.out.println("Error: can\'t add negative number!"); + return; + } + if(chargeLevel + amount <= 100){ + chargeLevel += amount; + } + } + + @Override + public boolean needsService(Vehicle v) { + return getMileage() > 8000; + } + + @Override + public void performService() { + System.out.println("Battery system checked"); + chargeLevel = 100; + } }