在多个位置引用和更新对象

时间:2018-09-06 22:05:43

标签: java arrays class object arraylist

我正在尝试创建一个Java程序,该程序可以保存学生和家长(均为自定义类)的信息,并从这些列表中生成每日工作表。我正在尝试向其中添加付款/收费,并且遇到了问题。在我的主程序中,我为学生提供了一个ArrayList,为父母提供了另一个。学生当前有一个字段,该字段是其父母和孩子的父母相同的ArrayList。当我更新信息时,它要么仅在我的主要父母名单中更新,要么在一个学生的父母名单中更新,而不是同时更新。创建对象列表并从多个位置/类更新它们的最佳方法是什么?

这是我的一些学生班。我可以在代码中添加任何其他有用的部分。预先感谢。

public class Student extends Person implements Serializable
{
private ArrayList<String> mAllergies;
private ArrayList<Calendar> mDates;
private ArrayList<Parent> mParents;

public Student(String firstName, String lastName, ArrayList<String> allergies, ArrayList<Calendar> dates)
{
    mFirstName = firstName;
    mLastName = lastName;
    mAllergies = allergies;
    mDates = dates;
    mParents = new ArrayList<>();
    mMoneyOwed = 0;
    setFullName();
}

public ArrayList<Parent> getParents()
{
    return mParents;
}

public void setParents(ArrayList<Parent> parents)
{
    mParents = parents;
}

public String listParents()
{
    String output = "";
    for (Parent p : mParents)
        output += p.getFullName() + ", ";
    if (output.length() > 1)
        output = output.substring(0, output.length() - 2);
    else
        output += "None on file";
    return output;
}

public void addParent(Parent parent)
{
    mParents.add(parent);
    parent.getChildren().add(this);
}

0 个答案:

没有答案