关于super
就是在子类继承父类的时候,父类一定要写上无参数构造方法
,因为每个子类的构造方法会默认去调用父类的无参数构造方法,除非子类已经调用了父类的有参数构造方法
。
父类
package Day4;
public class TestFather {
private String name;
private int age;
public TestFather() {
}
public TestFather(String name) {
this.name = name;
}
public TestFather(String name, int age) {
this.name = name;
this.age = age;
}
}
子类
package Day4;
public class Test extends TestFather{
private String ziName;
public Test() {
super();
}
public Test(String name, int age, String ziName) {
super(name, age);//这里就会先调用super
this.ziName = ziName;
}
}
super和this只能放在每个构造方法的最上面(在普通方法中没有位置限制),且super和this只能选择其中一个使用