Java继承中构造方法的访问特点
访问顺序
先有父类再有子类,先调用父类的构造方法,再调用子类的构造方法。
父类
package demoInit;
public class Phone {
public Phone(){
System.out.println("调用父类构造方法");
}
}
子类
package demoInit;
public class NewPhone extends Phone{
public NewPhone(){
System.out.println("调用子类构造方法");
}
}
主程序入口
package demoInit;
public class demoPhone {
public static void main(String[] args) {
NewPhone ph = new NewPhone();
}
}
输出:
调用父类构造方法
调用子类构造方法
注意事项
- 子类构造方法中有一个默认的“super()”,用来调用父类中的无参构造方法
- 如果父类没有无参构造函数,必须在子类的构造方法中通过super关键字来调用父类的重载构造 “super(参数);”
- 只有子类的构造方法才能调用父类的构造方法,且super语句必须是子类构造函数的第一句。