有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

继承Java找不到父类

我有这门课,人:

public class Person{
  String firstname;
  String lastname;

  public Person(String fname, String lname){

  }
  public String toString(){

  }
}

这个亚类,学生:

public class Student extends Person{
  Student(){
    super();
  }
  int studentID;
  int level;

  public Student(String fName, String lName, int gLevel){

  }
  public int getLevel(){

  }
  public String toString(){

  }
}

当我用DrJava编译时,我得到了一个错误:

cannot find symbol 
symbol  : constructor Person() 
location: class Person

我不确定是什么问题。我的理解是,使用super()构造函数应该可以解决这个问题,在代码中甚至不需要它。我的代码与我在网上看到的用Java演示继承的任何示例都匹配,但我仍然会遇到这个错误


共 (1) 个答案

  1. # 1 楼答案

    调用super();假设Person类中有一个默认构造函数,而没有,因为您有一个非默认构造函数

    必须明确提供默认构造函数:

    public Person() { }
    

    super语句中传递两个参数:

    super("Firstname", "Lastname");