编写java程序:某学校教师的工资=基本工资+课时补贴。教授的基本工资为5000元,每学时补贴70元;副教授的基本工资为3500元,每学时补贴60元;讲师的基本工资为2600元,每学时补贴55元。已知某个教师的学时数,计算该教师的每月工资。(要求使用继承实现)、
时间: 2024-10-19 15:17:05 浏览: 18
我们可以使用Java的继承机制来创建一个教师类(Teacher),然后分别定义三个子类(Professor、AssociateProfessor和AssistantProfessor)来表示不同级别的教师,每个子类重写父类的方法来计算工资。以下是简单的代码示例:
```java
// 教师基类
class Teacher {
private int basicSalary;
private int teachingHours;
public Teacher(int basicSalary, int teachingHours) {
this.basicSalary = basicSalary;
this.teachingHours = teachingHours;
}
public abstract double calculateTotalSalary();
// 计算基本工资部分
protected double calculateBasicSalary() {
return basicSalary;
}
// 获取教时补贴
protected int getTeachingHourBonus() {
return (teachingHours * 10); // 因为题目中每小时补贴是整数倍,这里简化处理
}
}
// 教授子类
class Professor extends Teacher {
@Override
public double calculateTotalSalary() {
return calculateBasicSalary() + getTeachingHourBonus();
}
}
// 同理,定义AssociateProfessor和AssistantProfessor子类
public class Main {
public static void main(String[] args) {
Teacher teacher = new Professor(5000, 20); // 假设教授有20学时
System.out.println("教授的月工资:" + teacher.calculateTotalSalary());
}
}
```
阅读全文