题目描述
编写一个代表员工,具体要求如下 :
(1)具有属性:姓名(name) 工龄(work year)、工资(salary),其中工龄应该大于0.否则输出错误信息,并赋子默认值为1;工资应该大于1000.否则输出错误信息,并赋子默认 值1000。
(2)具有方法:display,用来在控制台输出每个员工的姓名、工龄和工资。
(3)具有带参数的构造方法:用来完成对象的初始化工作,并在构造方法中完成对工龄和 工资的最小值限制。
(4)测试该类是否可行。
源代码
public class Employee {
private String name;
private int workYear;
private double salary;
public Employee(String name, int workYear, double salary) {
this.name = name;
setWorkYear(workYear);
setSalary(salary);
}
public void display() {
System.out.println("姓名:" + name);
System.out.println("工龄:" + workYear);
System.out.println("工资:" + salary);
}
public void setWorkYear(int workYear) {
if (workYear > 0) {
this.workYear = workYear;
} else {
System.out.println("工龄应该大于0,默认设置为1");
this.workYear = 1;
}
}
public void setSalary(double salary) {
if (salary > 1000) {
this.salary = salary;
} else {
System.out.println("工资应该大于1000,默认设置为1000");
this.salary = 1000;
}
}
public static void main(String[] args) {
Employee e1 = new Employee("张三", 2, 2000);
Employee e2 = new Employee("李四", -1, 500);
Employee e3 = new Employee("王五", 3, 1500);
e1.display();
System.out.println("----------------");
e2.display();
System.out.println("----------------");
e3.display();
}
}
在这个代码中,我们定义了一个Employee
类,具有name
、workYear
和salary
三个私有属性,以及相应的getter和setter方法。在构造方法中,我们使用了setWorkYear
和setSalary
方法来设置属性的值,并对工龄和工资进行了最小值限制。
display
方法用于在控制台输出员工的姓名、工龄和工资。
在main
方法中,我们创建了三个Employee
对象,并调用display
方法显示每个员工的信息。根据构造方法中的参数,我们可以看到工龄为负数和工资小于1000的情况下,会输出错误信息并使用默认值。
运行截图
© 版权声明
本站资源来自互联网收集,仅供用于学习和交流,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!
THE END