关于JAVA的基础编程题

来源:百度知道 编辑:UC知道 时间:2024/06/23 14:21:46
(1)编写员工类Employee。该类有如下属性:
id(编号int型)
sex(性别 byte型)
name(姓名String型)
duty(职务String型)
salary(薪水float型)
holidays(请假天数 int型)
该类有如下方法
display(),无返回值,该方法能打印员工的姓名、性别以及职务三个属性
getDecMoney(int day) 返回值是int型。该方法能计算员工因请假扣除的工资。计算扣除工资的方法是:如果请假天数<=3,则扣款为30×请假天数;如果请假天数超过3天,则扣款为50×请假天数。参数day表示请假天数。
该类的构造方法如下
Employee(int id,byte sex,String name,String duty, float salary,int holidays)

顶楼上,还有题目很烂,前后类型要一直,否则会丢精度,就拿工资来说吧
定义float型,最后计算返回int型,还有就是计算工资时,根本不需要传参数,因为这个类已经有足够的数据支持了,不知道getDecMoney(int day)方法中day的有什么意义
public class Employee {
int id;
byte sex;
String name;
String duty;
float salary;
int holidays;
Employee(int id,byte sex,String name,String duty,float salary,int holidays)
{
this.id=id;
this.sex=sex;
this.name=name;
this.duty=duty;
this.salary=salary;
this.holidays=holidays;

}

public void dispaly()
{
System.out.println("员工姓名:"+this.name);
if(this.sex==(byte)0)
System.out.println("员工性别:男");
else
System.out.println("员工性别:女");
System.out.println("员工职务:"+this.duty);

}

public int getDecMoney(int day)
{
if(day<=3)
this.salary-=30*day;
else
this.salary-=50*day;
return (int)this.salar