Files
WS-03-advanced-oop/src/main/java/org/Main.java
T

65 lines
1.5 KiB
Java

package org;
import org.model.Vehicle;
import org.model.ElectricCar;
import org.model.GasCar;
import org.model.SportsCar;
import org.util.VehicleInspector;
import org.behavior.Serviceable;
public class Main {
public static void main(String[] args) {
ElectricCar tesla = new ElectricCar(
"Tesla", "Model S", 2022, 1000,
100, 550, 50
);
GasCar toyota = new GasCar(
"Toyota", "Corolla", 2018, 85000,
5, 50, "Petrol"
);
SportsCar ferrari = new SportsCar(
"Ferrari", "F8 Tributo", 2021, 12000,
2, 3.9, "oil", 710
);
Vehicle[] vehicles = {tesla , toyota , ferrari};
for (Vehicle v : vehicles) {
v.basicInfo();
System.out.println();
}
for (Vehicle v : vehicles) {
VehicleInspector.inspect(v);
}
Serviceable[] serviceables = {tesla, toyota, ferrari};
for (Serviceable s : serviceables) {
Vehicle v = (Vehicle) s;
v.basicInfo();
if (s.needsService(v)) {
System.out.println(v.getBrand() + " " + v.getModel());
System.out.print("Performing service: ");
s.performService();
} else {
System.out.println(v.getBrand() + " " + v.getModel() + " does NOT need service");
}
System.out.println();
}
System.out.println("=== Workshop Completed ===");
}
}