image/svg+xml
TMotorised
engine_start()engine_stop()
wheelConnection()
TDieselVehicle
engine_start()warmup()
engine_stop()
Car
engine_start()engine_stop()
Conflict !
engine_start()warmup()
engine_start()warmup()engine_stop()
Option 1 : Removing a method {- engine_start() }
Option 2 : Aliasing { mot_eng_start() -> engine_start() } { diesel_eng_start() -> engine_start() }
warmup()diesel_eng_start()mot_eng_start()engine_stop()engine_start()
void engine_start() { diesel_eng_start(); mot_eng_start();}