使用super调用超类构造函数

子类可以使用下面形式的super来调用一个由其超类定义的构造函数:
super(parameter-list);
这里,parameter-list指定了超类中构造函数所需的任何形参.super()必须是在子类中执行的第一条语句:
public class test2
{
    // @param args
    public static void main(String args[])
    {
     childClass $obj = new childClass();
     System.out.println($obj.publicReturnInt());
    }
}
class childClass extends parentClass
{
    childClass()
    {
        super(100);
        System.out.println("childClass init");
    }
}
class parentClass
{
    
    private int num;
    
    parentClass(int n)
    {
        System.out.println("parentClass init");
        num = n;
    }
    
    int publicReturnInt()
    {
        return returnInt();
    }
    
    private int returnInt()
    {
        return num;
    }
    
}
输出:
parentClass init
childClass init
100
childClass使用形参调用super(),这样就会调用parentClass()的构造函数.
当一个子类调用super()时,就是在调用其直接超类的构造函数.因此,super()总是引用调用类的直接超类.在多级层次结构总也是如此,而且super()必须是子类构造函数中被执行的第一条语句.