试图在java中扩展一个类并遇到问题

时间:2017-10-06 08:24:33

标签: constructor

我想知道是否有人可以帮助我解决我在尝试扩展课程时遇到的问题。我希望能够将一个名字和姓氏作为我的基类的一部分添加到扩展类中。

这是我的基类Person.java的片段

public class Person
{
    private String firstName = "";
    private String lastName = "";
    private String id = "";


    public Person()
    {

    }

    public Person(String firstName, String lastName, String id)
    {
        this.firstName = firstName;
        this.lastName = lastName;
        this.id = id;
    }

这是我尝试扩展基类的类:

 public TeamMember(String firstName, String lastName, String team, String id, String role)
    {
        super(firstName, lastName);
        this.team = team;
        this.id = id;
        this.role = role;
    }

我收到的错误是:

错误:(25,9)java:constructor类xxx.xxxx.xxx.xx中的Person 不能适用于给定的类型;   必需:没有参数   发现:java.lang.String,java.lang.String   原因:实际和正式的参数列表长度不同

2 个答案:

答案 0 :(得分:0)

我必须创建一个与基类中扩展类中的super()匹配的构造函数。

这是我添加到基类中以使其工作的原因。

 public Person(String firstName, String lastName)
    {
        this.firstName = firstName;
        this.lastName = lastName;
    }

答案 1 :(得分:0)

试试这个。

public TeamMember(String firstName, String lastName, String team, String id, String role)
{
    super(firstName, lastName, id);
    this.team = team;
    this.role = role;
}

Id是基类的私有属性,因此无法在派生类中访问。

private String id = "";