(二)HardWork.java
abstract class Employee
{
public abstract double earnings( );
}
class YearWorker extends Employee
{
public double earnings() {
return 1200000.00;
}
}
class MonthWorker extends Employee
{
public double earnings() {
return 120000.00;
}
}
class WeekWorker extends Employee
{
public double earnings() {
return 30000.00;
}
}
class Company
{
Employee[] employee;
double salaries=0;
Company(Employee[] employee) {
this.employee=employee;
}
public double salariesPay() {
salaries=0;
for (Employee e : employee) {
salaries +=e.earnings();
}
return salaries;
}
}
public class HardWork
{
public static void main(String args[ ])
{
Employee[] employee=new Employee[20];
for(int i=0;i<employee.length;i++)
{ if(i%3==0)
employee[i]=new WeekWorker( );
else if(i%3==1)
employee[i]=new MonthWorker( );
else if(i%3==2)
employee[i]=new YearWorker( );
}
Company company=new Company(employee);
System.out.println("公司年工资总额:"+company.salariesPay());
}
}
运行结果: