复制方法类型会议中的会议(字符串) - 错误

时间:2014-05-17 17:11:58

标签: java constructor multiple-constructors

嗨大家我有关于重复构造函数的错误,但根据我的作业,我需要另一个构造函数,但是不同的字段。

规格:

  1. 会议 - 位置,主题,与会者列表作为字符串数组,Notes,addAttendee(字符串名称)方法。
  2. 用于将单个与会者设置为与会者数组的构造方法。
  3. 构造函数,用于接受分配给与会者列表的字符串数组。
  4. 另外两个与前两个相同的构造函数,但允许将注释字段设置为字符串。
  5. 以下是代码的一部分

    public Meeting(String name) {
        this.name = name;
        listofAttendees[count] = name;
        count++;
        // blank constructor for no parameter super constructor
    
    }
    
    // Constructor to accept an array of strings assign to the list of Attendees
    public Meeting(String[] listofAttendees) {
        this.listofAttendees = listofAttendees;
    
    }
    
    // CONStructors for note field
    
    public Meeting(String notes) {    // Error here!
        this.notes = notes;
    
    }
    

3 个答案:

答案 0 :(得分:1)

您将收到Duplicate Constructor错误,因为如果您将查看这两个构造函数

  1. 会议(字符串名称)
  2. 会议(字符串备注)
  3. 它们基本上具有相同的方法签名。你需要考虑其他事情来解决它。

    您的规范基本上是要求您添加“notes”字段以及先前构造函数中的字段。这样它就不会与您的方法签名冲突。

答案 1 :(得分:1)

您不能拥有多个具有相同名称和相同类型参数的方法。

只创建一个带有名称和注释的构造函数,如果只想分配名称,则将null参数作为注释传递。

public Meeting(String names, String notes);

答案 2 :(得分:0)

“names”和“notes”只是一个局部变量,你的函数从外面看起来完全一样,因此含糊不清。你应该有一个带有两个参数的构造函数。你怎么知道你从外面打电话给哪个构造函数,如new MyClass(myString)