当子类继承它的父类,那么在实例化子类的时候,是不是先调用父类的构造方法,然后才调用自己的构造方法?

解决方案 »

  1.   

    是,你可以看看《JAVA核心技術》
      

  2.   

    是的,因为一个子类对象中必然会包含父类中的属性的,所以每次构造一个子类对象时必然会先调用父类的构造函数以对父类中的属性初始化。所以如果你在子类构造函数中没有用super()显示调用父类的构造函数的话,那父类中就一定要有一个无参数的构造函数,这样编译器会在编译时自动给你加上父类的构造函数的。
    在《Thinking in Java》中对此有更详细的讲解。