我正在开发一个Java程序,可以跟踪我的员工工资单。有两种类型的员工,每小时和工资。
我有一个while循环请求输入和创建对象,以便我可以添加任意数量的员工。
当我从班级创建对象时,我只使用:
HourlyEmployee employee = new HourlyEmployee(type, name, hours, rate);
但是,如果这是在while循环中,我是否会创建具有相同名称“employee”的类类型HourlyEmployee的多个实例?它们是否具有相同的名称甚至是重要的(我只想稍后在屏幕上显示每个员工的信息)。
如果是这样,如何编写我的代码,以便每个HourlyEmployee对象的名称也是动态的?
谢谢!
如果你们想要剩下的代码,请告诉我。
答案 0 :(得分:5)
这样做的方法是将所有Employee
个对象放入集合中。
一个很好的起点是tutorial。
答案 1 :(得分:2)
是的,您将创建名为“employee”的多个HourlyEmployee
个对象。由于这个问题听起来有些作业,我不会举一个例子,但我会建议您调查一下HourlyEmployee
个对象的数组。
答案 2 :(得分:0)
试试这个,
创建一个名为Employee的抽象类,
然后是2个具体类HourlyEmployee和SalaryEmployee。
使用ArrayList来存储具有相同名称的员工不会产生冲突,但Map
可能是更好的选择,即使员工有Ids as unique keys
来识别员工名。
例如:
public void addEmp(Employee employee){
ArrayList<? extends Employee> emp;
while(true){ // Use a boolean variable to terminate the loop at certain conditions
for (Employee e : emp) {
e.add(employee);
}
}