1. 子类与父类的构造器
1.1 super方法
(1)super()表示子类在初始化时调用父类的空参数的构造函数来完成初始化。
(2)一个类都会有默认的空参数的构造函数,若指定了带参构造函数,那么默认的无参构造函数,就不存在了。
(3)子类构造器会默认调用super方法,用于初始化父类的成员。
(4)如果父类定义了带参构造函数,但没有无参构造函数,而子类默认调用了父类的无参构造函数,那么就会报错。
(5)此时IDE也会提醒你创建一个调用父类拥有的构造方法的子类构造方法:
package human;
public class Person {
public String name;
public String age;
public Person(String name, String age) {
this.name = name;
this.age = age;
}
@Override
public String toString() {
return name + ": " + age;
}
}
package human;
public class Student extends Person {
public String UID;
public Student(String name, String age, String uid) {
super(name, age);
UID = uid;
}
}