【问题标题】:New to coding and getters and setters are not working to a new class? [closed]编码新手,getter 和 setter 不适合新课程? [关闭]
【发布时间】:2017-10-18 19:52:14
【问题描述】:

所以我一直在为一个实验室编写代码,在其中我们需要创建一个名为 payroll 的类,其中我们有名称、地址、工资和工作时间的 getter 和 setter,然后创建一个方法来打印地址和名称和另一种计算工作时间 x 工资的方法,并将地址和名称打印在另一个名为 demoPayroll 的类上。不过,我的 getter 和 setter 并没有转移到 demoPayroll。这是我的代码。非常感谢任何帮助!

import java.util.Scanner;

public class DemoPayroll {

    public static void main(String[] args) {
        Payroll newEmpInfoObject = new Payroll();

        System.out.println("Enter name");
        Scanner keyboard = new Scanner(System.in);
        String name = keyboard.nextLine();
        System.out.println("Enter Address");
        String address = keyboard.nextLine();
        System.out.println("Enter Hourly Pay");
        double payrate = keyboard.nextDouble();
        System.out.println("Enter Hours Worked");
        double hours = keyboard.nextDouble();

        newEmpInfoObject.printEmpInfo();
        newEmpInfoObject.getGrossPayEarned();
    }
}

public class Payroll {
    private String name;
    private String address;
    private double payrate;
    private double hours;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public double getPayrate() {
        return payrate;
    }

    public void setPayrate(double payrate) {
        this.payrate = payrate;
    }

    public double getHours() {
        return hours;
    }

    public void setHours(double hours) {
        this.hours = hours;
    }

    public Object printEmpInfo() {
        System.out.println(name);
        System.out.println(address);
        return address;
    }
}

【问题讨论】:

  • 你在哪里打电话给你的二传手?
  • 你不调用任何setter。
  • 你永远不会使用你的 getter 和 setter。您在Payroll 对象上调用的唯一方法是printEmpInfo()getGrossPayEarned()。另外,请整理您问题中的代码。

标签: java methods getter-setter


【解决方案1】:

首先,我可能认为您从外部来源复制了该程序, 因为有很多编译错误。 无论如何... 试试这个,这可能有用...

导入 java.util.Scanner;

公共类 DemoPayroll {

public static void main(String[] args) {
    Payroll newEmpInfoObject = new Payroll();

    System.out.println("Enter name");
    Scanner keyboard = new Scanner(System.in);
    String name = keyboard.nextLine();
    System.out.println("Enter Address");
    String address = keyboard.nextLine();
    System.out.println("Enter Hourly Pay");
    double payrate = keyboard.nextDouble();
    System.out.println("Enter Hours Worked");
    double hours = keyboard.nextDouble();
    System.out.println("Enter Weeks");
    int week = keyboard.nextInt();

    Payroll pay=new Payroll();

    pay.printEmpInfo(name,address);
    System.out.println(pay.getGrossPayEarned(payrate,hours,week));
}

}

类工资{

private double payrate;
private double hours;

public Object printEmpInfo(String name,String address) {
    System.out.println(name);
    System.out.println(address);
    return address;
}
public double getGrossPayEarned(double payrate,double hours,int week) {
    return (hours)*((hours/week)*52)/12;
}

}

【讨论】:

    猜你喜欢
    • 2011-04-06
    • 1970-01-01
    • 2022-07-16
    • 1970-01-01
    • 2011-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多