A subclass inherits all the methods and fields (eligible one) from the base class, so base class constructer is called to initialise the values if any in the process of creation of subclass object (subclass is also an object of superclass). Hence before initializing the default value of sub class the super class should be initialized using the default constructor.