Hello, I was trying to learn about Abstract classes and I came to find the code you see below. My question is, why do you also see the abstract Bike class constructor being executed when creating the Honda object. The Honda class already has its own constructor and yes, it does extend to Bike, but if the Honda already implements the constructor why does the Bike constructor show up in the console?
abstract class Bike{ Bike(){ System.out.println("Bike Constructor accessed."); } abstract void run(); void changeGear(){ System.out.println("gear changed"); } } //Bike class Honda extends Bike{ Honda(){ System.out.println("Honda Constructor accessed."); } void run(){ System.out.println("running safely.."); } } public class TestingCode { public static void main(String[] args) { Honda obj = new Honda(); obj.run(); obj.changeGear(); }//Main //Start }//Class