子类不继承父类的构造方法,但父类的构造方法对子类构造方法的创建有影响。
1.一个类中若没有定义构造方法,则默认存在一个无参构造方法,格式如下:
public 类名(){
super();
}
2.this([参数列表])调用本类构造方法,必须放在有效代码行第一行,而super();调用父类构造方法,也必须放在有效代码行的第一行。所以如果一个构造方法中已经使用了this就不能使用super,即:this与super不能同时存在;也就是说:如果父类拥有无参构造方法(无论显式还是隐式),且子类中的构造方法又没有明确指定调用父类的哪个构造方法,则子类中没有调用本类其他构造方法的构造方法使用super()隐式(默认)调用父类无参构造方法。
public class Father {
public Father() {
System.out.println("父类构造方法");
}
}
public class Son extends Father{
public Son() {
this("w");
System.out.println("子类构造方法");
}
public Son(String name) {
System.out.