对于家庭作业,创建我们在整个作业中使用的类的一部分要求我创建遵循准则的构造函数
ContactInfo()
默认构造函数并初始化名称=“未知”的联系信息和一个空列表 (零的长度)”
ContactInfo(字符串名称,ArrayList
构造函数并使用给定的名称和给定的电话列表初始化联系信息。”
<小时/>这是我们第一个使用构造函数和数组列表的作业,我们的教科书几乎没有关于实际编写它们的信息,而不是它们的作用。
这就是我到目前为止所写的内容。
import java.util.ArrayList;
import java.util.List;
public class ContactInfo {
public String name;
public ArrayList<Phone> phoneNums;
public ContactInfo() {
String name = "unknown";
ArrayList phoneNumber = new ArrayList<Phone>(0);
}
public ContactInfo(String name, ArrayList<Phone> phoneNumber) {
this.name = name;
this.phoneNumber = phoneNumber;
}
}
我收到“找不到符号变量phoneNumber”错误,但是我很确定它已初始化并且该方法可以访问它。我对如何使用构造函数并完成帖子顶部描述的指南感到非常困惑。我的教授不愿意在感恩节假期查看他的电子邮件,所以我无法联系他寻求帮助。
编辑:我们有另一个提供的源文件包含在此代码中,但是所有方法和变量都是私有(private)的(我们也不允许更改此文件),所以我不确定它们是否会有帮助。
最佳答案
您正在尝试为不存在的变量(phoneNumber)设置一个值。 这是引用当前对象的引用变量。 因此,这是引用 ContactInfo 对象,其中phoneNumber 不存在。
你可以这样做
public ContactInfo(String name, ArrayList<Phone> phoneNumber) {
this.name = name;
this.phoneNums = phoneNumber;
}
或者
将phoneNums重命名为phoneNumber
关于java - 如何创建一个构造函数来初始化具有给定名称和 "given list of phones"的联系信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59131053/