public class FatherClass {
private int age;
public FatherClass(int age) {
super();
System.out.println("初始化值" + age);
}
public FatherClass(){
System.out.println("FatherCalss");
}
}
public class Subclass extends FatherClass {
int a;
boolean flag;
String str;
}
public class Test {
public static void main(String[] args) {
Subclass subClass = new Subclass();
System.out.println(subClass.a);
System.out.println(subClass.flag);
System.out.println(subClass.str);
subClass.toString();
}
}
以上三個類分別爲父類、子類、測試類。輸出結果如下:FatherCalss
0
false
null
從結果可以看出,當子類沒有定義無參構造方法時,new一個該類的對象會調用其父類的無參構造方法。同時,還會初始化子類中的參數,int類型被初始化爲0,boolean類型的被初始化爲false,引用對象被初始化爲null。