繁体   English   中英

如何将抽象 Class 中的列表传递给另一个 class?

[英]How to pass a List from an abstract Class to another class?

Employee是我的抽象 class,它有FixedPosition作为子 class。 Company 有一个名为 addEmployee() 的方法,该方法必须接收一个 Employee 类型,然后将来自 Employee 的 List 添加到它自己的 List 中。

Company company = new Company("Hi");
List<Employee> employees = new ArrayList<>();

后来我填写了我的列表,但我不知道如何将类型 Employee 从公司发送到方法中。

employees.add(new FixedPosition(name, occupation, salary, monthsContract));
company.addEmployee();

您的方法addEmployee()没有参数。 重写它,让它得到一个员工 object 解决了你的问题。

public void addEmployee( Employee e ) {
    this.employees.add(e);
}

您的公司 class 应该有员工名单。

您似乎需要在Company class 中重载方法addEmployee以支持处理员工列表:

public void addEmployee(List<Employee> employees) {
    this.employees.addAll(employees);
}

或者,您可以在循环中使用单个员工调用现有的Company方法:

employees.forEach(company::addEmployee);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM