java 某公司每月标准上班时间是160小时,不足160小时,按实际时间计算,每小时工资是30元。如果上班时间超出了160小时,超出部分每小时按1.5倍工资发放。请编写程序计算员工月工资的方法monthSalary()。
时间: 2024-10-10 07:14:08 浏览: 40
Java获得当前时间前指定几个小时具体时间的方法示例
5星 · 资源好评率100%
在 Java 中,你可以创建一个名为 `Employee` 的类,包含姓名、基本工资等属性,并提供一个 `monthSalary()` 方法来计算月工资。这里是一个简单的示例:
```java
public class Employee {
private String name;
private double basicHourlyRate; // 30元/小时
public Employee(String name) {
this.name = name;
this.basicHourlyRate = 30.0; // 元/小时
}
private double standardHours;
private double overtimeHours;
// 设置每月工作时间
public void setMonthlyWorkTime(double hours) {
if (hours > 160) {
this.standardHours = 160;
this.overtimeHours = hours - 160;
} else {
this.standardHours = hours;
this.overtimeHours = 0;
}
}
// 计算月工资
public double monthSalary() {
double monthlyPay = standardHours * basicHourlyRate;
if (overtimeHours > 0) {
monthlyPay += overtimeHours * basicHourlyRate * 1.5;
}
return monthlyPay;
}
// 获取员工信息
public String getName() {
return name;
}
// 获取月工资
public double getMonthSalary() {
return monthSalary();
}
// 主函数演示如何使用
public static void main(String[] args) {
Employee employee = new Employee("张三");
employee.setMonthlyWorkTime(180); // 超过标准工时
System.out.println(employee.getName() + "的月工资:" + employee.getMonthSalary());
}
}
```
在这个例子中,`monthSalary()` 方法首先计算基础工时的工资,然后检查是否有加班时间并计算加班工资。主函数展示了如何使用这个类来计算特定员工的月工资。
阅读全文