【发布时间】:2019-09-22 07:46:33
【问题描述】:
任务说明
我有这个问题陈述: 使用以下私有成员变量创建一个 Employee 类。
int employeeId
String employeeName
double salary
double netSalary
在 Employee 类中包含适当的 getter 和 setter 方法。在 Employee 类中编写以下方法: public void calculateNetSalary(int pfpercentage) - 此方法应以 PF 百分比作为参数。从工资中扣除 PF 金额并设置 netSalary。
创建一个 Main 类,该类具有调用该方法以获取输入并打印详细信息的 main 方法,如示例中所示。
也写一个方法:
public static Employee getEmployeeDetails() - 获取员工详细信息 - id、姓名和薪水,并返回员工对象。
public static int getPFPercentage() - 获取 PF 百分比并返回相同
在main方法中调用上述两个方法,然后调用Employee类中的calculateNetSalary方法,打印输出如下图。
示例输入 1:
输入 ID: 101 输入名字: 维韦克 输入工资: 20000 输入 PF 百分比: 7
样本输出 1:
ID:101
姓名:维韦克
工资:20000.0
净工资:18600.0
我做了什么
我在 Employee.java 中编写了 getter & setters 方法和 calculateNetSalary() 方法。我被困在 Main.java 中应该写什么以及如何写
Employee.java
public class Employee{
private int employeeId;
private String employeeName;
private double salary;
private double netSalary;
//setters
public void setEmployeeId(int employeeId){
this.employeeId=employeeId;
}
public void setEmployeeName(String employeeName){
this.employeeName=employeeName;
}
public void setSalary(double salary){
this.salary=salary;
}
public void netSalary(double netSalary){
this.netSalary=netSalary;
}
//getters
public int getEmployeeId(){
return employeeId;
}
public String getEmployeeName(){
return employeeName;
}
public double getSalary(){
return salary;
}
public double getNetSalary(){
return netSalary;
}
public void calculateNetSalary(int pfpercentage){
pfamount=salary*pfpercentage;
netSalary=salary-pfamount;
}
}
Main.java
import java.util.Scanner;
public class Main{
public staic void main(String[] args){
Scanner sc = new Scanner(System.in);
Employee emp = new Employee();
System.out.println("Enter Id:"+setEmployeeId(sc.nextInt()))
System.out.println("Enter Name:"+setEmployeeName(sc.next()));
System.out.println("Enter salary:"+setSalary(sc.nextDouble()));
System.out.println("Enter PF percentage:");
double pfpercentage = sc.nextDouble();
public static Employee getEmployeeDetails(){
}
public static int getPFPercentage(){
}
}
}
我无法完成 Main.java,因为我不确定要写什么以及如何写。
【问题讨论】:
-
你是说你不能计算百分比吗?请澄清你被困在什么地方。
-
其他方法中不能有方法。所以从删除这两个空方法开始。
setEmployeeId()、setEmployeeName()和setSalary()是 Employee 类的方法,因此需要在员工上调用它们:emp.setEmployeeId(...)。不要尝试打印某些内容、获取输入并将员工 ID 设置在一行中。这是三个单独的指令,应该在三个单独的行上:1. 打印一条消息,2. 读取员工 ID,3. 将员工的 ID 设置为您在步骤 2 中读取的内容。