【发布时间】:2018-03-28 05:25:40
【问题描述】:
我一直想知道有没有办法为一个特定类的每个对象调用方法?
假设我有一堂课:
public class Employee {
private double salary;
private boolean hired;
public double getSalary() {return salary;}
public double setSalary(double x) {salary=x;}
public boolean getHired() {return hired;}
public boolean setHired(boolean check) {hired=check;}
}
然后我声明另一个扩展 Employee 的类,例如老板(因为老板也是员工对吧)
所以他从 Employee 继承了“gets”和“sets”,也有可能解雇员工:
public class Boss extends Employee {
public void fireTheGuy(Employee unluckyYou) {
boolean temp;
temp=false;
unluckyYou.setHired(temp);
unluckyYou.setSalary(0.0);
}
这允许在 main:
public static void main(String args[])
{
Employee worker1 = new Employee();
Employee worker2 = new Employee();
Boss slacker = new Boss();
slacker.fireTheGuy(worker1);
slacker.fireTheGuy(worker2);
}
但是如果我有大约 100 名员工,而老板想要全部解雇他们怎么办?应该如何调用这个方法(这甚至可以通过某种循环来实现吗?)
【问题讨论】:
-
这就是可迭代数据结构的用途。将您的员工放入一个数组或集合中,并在循环中对其进行迭代,然后在循环中调用函数。
-
你可能需要考虑将对象放在一个数组中,然后你可以循环它们
标签: java class object methods instance