Java 扩展类时出错
我正在为一个无用的类项目创建两个类。这些类是Employee和Doctor,其中Doctor扩展了Employee。看起来很简单,对吧?我也这么认为 以下是我的员工代码(不包括标题): 这是我的医生代码(不包括标题): 这应该能起作用,对吗?唉,当我尝试编译Doctor类(Employee类编译得很好)时,BlueJ说“类Employee中的构造函数Employee不能应用于给定的类型;必需:java.lang.String找到:无参数原因:实际参数列表和形式参数列表长度不同”Java 扩展类时出错,java,constructor,extends,Java,Constructor,Extends,我正在为一个无用的类项目创建两个类。这些类是Employee和Doctor,其中Doctor扩展了Employee。看起来很简单,对吧?我也这么认为 以下是我的员工代码(不包括标题): 这是我的医生代码(不包括标题): 这应该能起作用,对吗?唉,当我尝试编译Doctor类(Employee类编译得很好)时,BlueJ说“类Employee中的构造函数Employee不能应用于给定的类型;必需:java.lang.String找到:无参数原因:实际参数列表和形式参数列表长度不同” 我知道我可能做错
我知道我可能做错了什么,但我不知道是什么。再说一次,可能只是我在使用BlueJ;我没有试过用cmd的任何其他IDE编译它。。。然而你知道我做错了什么吗 您需要添加一个
super(n)代码>到您的医生构造函数
在Java中,构造函数不会像那样自动链接。在到达Doctor构造函数之前,它会查找基类的无参数构造函数,除非Doctor构造函数中的第一条语句是对super()的调用。您需要添加一个super(n)代码>到您的医生构造函数
在Java中,构造函数不会像那样自动链接。在到达Doctor构造函数之前,它会查找基类的无参数构造函数,除非Doctor构造函数中的第一条语句是对super()的调用
public class Employee {
protected String name;
public Employee(String n) {
name = n;
}
}
public class Doctor extends Employee {
protected String school;
public Doctor(String n, String s) {
name = n;
school = s;
}
}