我知道无论是否在子类构造器中使用super
子类构造器总是调用父类的构造器,可是原因是什么呢?

解决方案 »

  1.   

    因为子类继承了父类的一些特性,子类里只需要定义新加的属性和方法,所以子类初始化的时候调用父类的构造器,这样才能够保证所有的成员变量被赋值,同时super()方法也减少了很多麻烦。
      

  2.   

    你直接把jdk源代码研究下就清楚了
      

  3.   

    很简单,这是java语言的规则,规则是用来遵守的
      

  4.   

    子类构造器的第一句话默认是super();