introductionToProgramming/week10/cars/Vehicle.java
Daniel Bulant c91fd07e47 week 10
2025-11-05 13:08:47 +01:00

27 lines
945 B
Java

interface Vehicle {
int getRemainingRange();
int drive(int kms);
public static void main(String[] args) {
// 100km / 5l
var gasCar = new GasolineCar(100. / 5.);
gasCar.fuel = 10; // 200km fuel
// 100km / 5l; 10 km / "energy unit"
var hybridCar = new HybridCar(100. / 5., 10.);
hybridCar.fuel = 5; // 100km fuel
hybridCar.electricalEnergy = 5; // 50km eletricity
assert gasCar.getRemainingRange() == 200;
assert gasCar.drive(100) == 100;
assert gasCar.getRemainingRange() == 100;
assert gasCar.drive(200) == 100;
assert gasCar.getRemainingRange() == 0;
assert hybridCar.getRemainingRange() == 150;
assert hybridCar.drive(50) == 50;
assert hybridCar.electricalEnergy == 0;
assert hybridCar.fuel == 5;
assert hybridCar.drive(200) == 100;
assert hybridCar.getRemainingRange() == 0;
}
}