package day21; class Person01{ private String name; private int age; // Person01(){} // 父类的无参数的初始化方法(构造方法) // 有参数的构造方法 没有无参数的构造方法 Person01(String name, int age){ super(); // 所有的类必须继承基类 object类 this.name = name; this.age = age; } } // 继承报错 父类没有无参数构造方法 因为子类初始化的时候 父类也必须初始化 class Student01 extends Person01{ private int score; // 子类初始化的时候 主动使用父类的有参数的构造方法 public Student01(String name, int age){ //如果不适用有参数的构造方法 父类的无参数构造方法 必须写 否则会报错 super(name, age); //指定使用有参数的构造方法可以不用写无参数构造方法 } public Student01(String name, int age, int score){ super(name, age); this.score = score; } } public class ExtendsDemo02 { public static void main(String[] args) { Student01 s1 = new Student01( "马斯克", 55); Student01 s2 = new Student01( "拉里佩奇",45, 99); } }