使用函数重写计算工作量的程序,两个参数( hours 和 rate)。 输入时间: 45 输入汇率: 10
时间: 2024-09-13 21:06:33 浏览: 40
在面向对象编程中,函数重写(或方法重写)是指在子类中重新定义从父类继承的方法。这样做可以修改或扩展父类中方法的行为。下面是一个简单的例子,展示如何使用函数重写来计算工作量。这里我们定义一个基类 Work 和一个子类 Freelance。基类包含一个计算工作量的方法,而子类通过重写这个方法来根据不同的工作类型计算工作量。
首先定义基类 Work:
```java
class Work {
public double calculateEarnings(int hours, double rate) {
return hours * rate;
}
}
```
然后定义子类 Freelance,它重写基类中的 `calculateEarnings` 方法:
```java
class Freelance extends Work {
@Override
public double calculateEarnings(int hours, double rate) {
// 假设自由职业者的工作量计算方式是每小时工资乘以时间再加上固定费用
double fixedFee = 500;
return hours * rate + fixedFee;
}
}
```
现在,如果我们使用这个程序来计算工作量,我们可以这样做:
```java
public class WorkCalculator {
public static void main(String[] args) {
Work work = new Freelance(); // 使用 Freelance 类型引用创建实例
int hours = 45;
double rate = 10;
double earnings = work.calculateEarnings(hours, rate);
System.out.println("总工作量为: " + earnings);
}
}
```
上述代码段中,我们创建了一个 Freelance 类的实例,并将其作为 Work 类型的引用。然后调用 `calculateEarnings` 方法计算工作量。由于 Freelance 类重写了这个方法,所以实际执行的是 Freelance 类中定义的逻辑。
阅读全文