为了账号安全,请及时绑定邮箱和手机立即绑定

给定以下类,完成 Student 类的代码,以便在我们运行 Q01 类时打印以下输出

给定以下类,完成 Student 类的代码,以便在我们运行 Q01 类时打印以下输出

一只名叫tom的猫 2023-06-14 11:14:36
给定以下类,完成 Student 类的代码,以便在我们运行 Q01 类时打印以下输出。提示:学生类是 Person 的子类这是输出:部门:CSE,ID:20101001,姓名:Mark Wahlberg部门:BBA,ID:20101002,姓名:Zeeko Zaki部门:CSE,编号:20101002,姓名:Zeeko Zakipublic abstract class Person {  private String name;  private Person() {  }  Person(String name) {    this.name = name;  }  protected String getName() {    return name;  }  protected void setName(String name) {    this.name = name;  }}public class Q01 {  public static void main(String[] args) {    Student s1 = new Student("CSE", 20101001, "Mark Wahlberg");    Student s2 = new Student("BBA", 20101002, "Zeeko Zaki");    s1.printDetail();    s2.printDetail();    s2.setDepartment("CSE");    s2.printDetail();  }}我在班级下面创建了一个新班级public class Student extends Person{  public String department="";  public int id;  public String name;  public String Public(String name){    return name;  }  public Student(String department,int id,String name){    this.department=department;    this.id=id;    this.name=name;  }  public void setDepartment(String department){    this.department=department;  }  public String getDepartment(){    return department;  }  public void printDetail(){    System.out.println("Department: "+this.department+", ID: "+this.id+", Name: "+name);  }} 我无法编译这段代码。如何解决这个问题呢?我的错误在哪里?
查看完整描述

1 回答

?
慕姐4208626

TA贡献1852条经验 获得超7个赞

Student 的构造函数需要先调用父类的构造函数。


为此,您需要调用“super”并传递正确的参数,在这种情况下,父类(Person)有 2 个构造函数,默认构造函数是私有的,并且只能在 Person 类中访问,因此您必须使用第二个构造函数子类 Student,它采用字符串名称。艾


 public Student(String department,int id,String name){

    super(name);

    this.department=department;

    this.id=id;

    this.name=name;

}


查看完整回答
反对 回复 2023-06-14
  • 1 回答
  • 0 关注
  • 129 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信