设计一个abstract类,类名为Employee。该类有成员变量name,有构造方法,有一个抽象方法,格式如下: public abstract double earning(); (2)定义Employee的子类YearWorker和MonthWorker。YearWorker对象按年领薪水,MonthWorker对象按月领薪水。子类重写earning方法,给出各自领取报酬的具体值(自编,YearWorker类中返回年薪,Monthworker类中返回月薪) (3)有一个Company类,该类使用
时间: 2023-06-10 19:03:41 浏览: 101
Employee类的对象作为成员变量,有一个方法用于计算公司支付给所有员工的总工资。该方法的格式如下:
public double totalSalary(Employee[] employees) {
double total = 0.0;
for (Employee employee : employees) {
total += employee.earning();
}
return total;
}
下面是实现以上需求的代码:
abstract class Employee {
protected String name;
public Employee(String name) {
this.name = name;
}
public abstract double earning();
}
class YearWorker extends Employee {
public YearWorker(String name) {
super(name);
}
@Override
public double earning() {
return 120000.0; // 假设年薪为12万
}
}
class MonthWorker extends Employee {
public MonthWorker(String name) {
super(name);
}
@Override
public double earning() {
return 10000.0; // 假设月薪为1万
}
}
class Company {
public double totalSalary(Employee[] employees) {
double total = 0.0;
for (Employee employee : employees) {
total += employee.earning();
}
return total;
}
}
// 测试代码
public static void main(String[] args) {
Employee[] employees = new Employee[4];
employees[0] = new YearWorker("张三");
employees[1] = new YearWorker("李四");
employees[2] = new MonthWorker("王五");
employees[3] = new MonthWorker("赵六");
Company company = new Company();
System.out.println("公司总工资:" + company.totalSalary(employees));
}
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)