【发布时间】:2017-12-10 21:41:26
【问题描述】:
我有一个超类、子类和一个测试器类。任何人都可以帮助解决我做错的事情吗?
这是我在测试员课程中所需要的—— 1. 创建Manager和Employee对象。
创建一个函数修改薪水,以修改经理或员工的构造函数中设置的薪水。 (使用多态的概念)
使用对象的显示函数打印与对象类相关的信息。
这是我的课程
超类:
public class Employee {
private int employeeNumber;
private String employeeName;
private double employeeSalary;
public Employee(int employeeNumber, String employeeName, double employeeSalary) {
this.employeeNumber = employeeNumber;
this.employeeName = employeeName;
this.employeeSalary = employeeSalary;
}
public double getEmployeeSalary() {
return employeeSalary;
}
public void setEmployeeSalary(double employeeSalary) {
this.employeeSalary = employeeSalary;
}
public void display(){
System.out.println("Employee Number: "+ employeeNumber +"\n"
+ "Employee Name: " + employeeName + "\n"
+ "Employee Salary: " + employeeSalary);
}
}
子类:
public class Manager extends Employee {
private int rewards;
public Manager(int employeeNumber, String employeeName, double employeeSalary) {
super(employeeNumber, employeeName, employeeSalary);
}
public void display() {
super.display();
System.out.println(rewards);
}
}
测试人员:
public class Test {
public static void main(String [] args) {
Manager manager = new Manager(11111, "Elon Musk", 42344);
manager.display();
Employee employeeOne = new Employee(324, "Bob Den", 3522);
Employee employeeTwo = new Employee(44, "Tim Pipe", 4234 );
Employee employeeThree = new Employee(42, "Asif Blar", 4321);
private void reviseSalary() {
double employeeSalary = manager.getEmployeeSalary();
manager.setEmployeeSalary(employeeSalary +(employeeSalary /10));
manager.display();
}
}
}
**我的问题:
我的测试课出错了。当我创建一个管理器对象时,它说构造函数是未定义的。另外,对于我的私人 void “reviseSalary”,它说我不能使用 void
谁能告诉我我做错了什么,并在可能的情况下帮助创建我的 reviseSalary 函数
谢谢
【问题讨论】:
-
你能发布你从控制台得到的错误吗?
-
您在 main 方法中定义了您的方法“reviseSalary”。
-
阅读@RobertKock 写的内容,这是唯一的问题,其他一切都很好。
-
@J.Doe 你用不同的方法声明和实例化管理器,另一个方法不能访问它。您在 main 中声明它并尝试从 reviseSalary() 访问它。
-
请不要通过破坏您的帖子为人们增加工作量。通过在 Stack Exchange (SE) 网络上发帖,您已在 CC BY-SA 3.0 license 下授予 SE 分发该内容的不可撤销的权利(即无论您未来的选择如何)。根据 SE 政策,帖子的非破坏版本是分发的版本。因此,任何破坏行为都将被撤销。
标签: java inheritance subclass superclass