将构造函数的属性添加到 ArrayList?

Adding a constructor's properties to an ArrayList?

我正在尝试将一个在构造函数中定义的 Person 添加到 ArrayList,这样我就可以调用另一个 class 中的方法。但是,我在实际向 ArrayList 添加 Person 时遇到了问题。这是我目前所拥有的:

成长class更新

public class GrownUp extends Person
{
    ArrayList<Person> people;



GrownUp(int age, String name)  
{
    super(age, name);
    this.people = new ArrayList<>();        
    name = "Bill";
    age = 36;        
}  

public ArrayList<Person> getGrownUp()
{
   return people;
}

public void setGrownUp(int age, String name)
{
    //how to add a GrownUp? 
}

所以需要做的是:

感谢任何帮助,谢谢。

我之前问过一个与此类似的问题,但不清楚我在问什么,所以我改变了我的问题,希望它对我想要实现的目标更有意义。我已经添加了一个 get 方法,但我不知道如何执行 set 方法。我如何将 Person 构造函数关联到 ArrayList 以将一个人添加到其中?

这应该对你有帮助。

public void setGrownUp(int age, String name)
{
people.add(new GrownUp(age,name));
}

我认为在 GrownUp class 中使用 people 数组有点奇怪。尝试将其映射到现实世界。让人们加入 GrownUp 有意义吗?我宁愿把那个数组放在外面,然后这样做:

List<People> people = new ArrayList<>();
people.add(new GrownUp(25, "Alice"));
people.add(new GrownUp(36, "Bill"));
people.add(new Child(5, "Nina"));

The GrownUp class 看起来像这样:

public class GrownUp extends Person {

    public GrownUp(int age, String name) {
        super(age, name)
    }
}

我猜你打算添加更多特定于 GrownUp class 的属性,例如 Optional<DriversLicense> getDriversLicense() 或类似属性。