diff --git a/src/main/java/org/model/Car.java b/src/main/java/org/model/Car.java index 87b8e9b..aec7b0f 100644 --- a/src/main/java/org/model/Car.java +++ b/src/main/java/org/model/Car.java @@ -32,7 +32,7 @@ public abstract class Car extends Vehicle implements Serviceable { @Override public void showDetails() { super.basicInfo(); - System.out.println(" | seats: " + this.seats); + System.out.print("seats: " + this.seats); } diff --git a/src/main/java/org/model/HybirdCar.java b/src/main/java/org/model/HybirdCar.java index bc85102..33d4225 100644 --- a/src/main/java/org/model/HybirdCar.java +++ b/src/main/java/org/model/HybirdCar.java @@ -1,4 +1,61 @@ package org.model; -public class HybirdCar { +import org.behavior.Chargeable; +import org.behavior.Refuelable; + +public class HybirdCar extends Car implements Refuelable, Chargeable { + + private double batterLevel; + private double fuelLevel; + + public HybirdCar(String brand, String model, int year, + double mileage,int seats, double batterLevel, double fuelLevel) { + + super(brand, model, year, mileage, seats); + this.batterLevel = batterLevel; + this.fuelLevel = fuelLevel; + + + + } + + @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 charge(double amount) { + if(amount<0) + System.out.println("amount cannot be negative"); + else + batterLevel += amount; + + if(batterLevel>100) + batterLevel = 100; + } + + @Override + public boolean needsService(Vehicle v) { + if(v.getMileage()>10000) + return true; + + return false; + } + + @Override + public void performService() { + System.out.println("Engine oil changed and battery system checked"); + batterLevel = 100; + fuelLevel = 100; + } } diff --git a/src/main/java/org/model/SportsCar.java b/src/main/java/org/model/SportsCar.java index 8659517..cb25798 100644 --- a/src/main/java/org/model/SportsCar.java +++ b/src/main/java/org/model/SportsCar.java @@ -28,7 +28,7 @@ public class SportsCar extends GasCar { @Override public void showDetails() { super.showDetails(); - System.out.println(" | accelaration time: " + zeroToHundred); + System.out.println("accelaration time: " + zeroToHundred); } @Override