测试程序:
public class Testext {
public static void main(String[] args) throws Exception {
Zi zi = new Zi(); //输出:中国 黑马
Zi z = new Zi(10); //输出:中国 10
}
}
class Fu {
Fu() {
System.out.println("中国");
}
}
class Zi extends Fu {
Zi() {
//super(); 这名若不写,系统会默认调用
System.out.println("黑马");
}
Zi(int term){
//super(); 这名若不写,系统会默认调用
System.out.println(term);
}
}
显然子类的构造方法(包括重载的构造方法)默认调用父类的构造方法(super())。
其实可以近似地认为它"重写"了父类的构造方法:可以调用父类的方法,还可以添加自己的逻辑。
|