I really don’t know what the keyword for my situation. Please edit the title post if possible.
I have three classes:
- Vehicle (abstract class)
- AutomatedVehicle (abstract class)
- AutomatedAuto (concrete class)
AutomatedAuto extend AutomatedVehicle and AutomatedVehicle extend Vehicle
-
Vehicle class has 3 abstract method: drive(), park(), makeNoise()
-
AutomatedVehicle implemets park(), drive() as follow:
public void park() {
autoPark();
}
public void drive() {
autoDrive();
}
abstract void autoPark();
abstract void autoDrive();
- AutomatedVehicle
public void autoDrive() {
System.out.println("Driving it myself");
}
public void autoPark() {
System.out.println("Parking it myself");
}
public void makeNoise() {
System.out.println("Beep, Beep");
}
I understand the final result. But I don’t understand why they write code like like this. I want to explore some problem relevant to implement park(), drive() at AutomatedVehicle.
Thanks