JAVA 10.4 工资管理软件设计 TUT实验二

2、工资管理软件设计(第2次实验,6学时)某公司由6人组成,他们分别是:其中,Sam是经理,每月除得到基本工资外,还获得$500.00的红利;Peter和Mary是合同工,每月拿基本工资;Cliff是小时工,他的每月的工资额=基本工资×工作小时数,他的工作小时数为每月40小时;而Al和Gus是义工,不拿工资。图1反应了上述情况。StaffMember是抽象类,有一个抽象方法pay。Manager类中的bonus代表红利;awardBonus方法用来增加红利。Hourly类中的hoursWorke
摘要由CSDN通过智能技术生成

2、工资管理软件设计(第2次实验,6学时)

某公司由6人组成,他们分别是:

其中,Sam是经理,每月除得到基本工资外,还获得$500.00的红利;Peter和Mary是合同工,每月拿基本工资;Cliff是小时工,他的每月的工资额=基本工资×工作小时数,他的工作小时数为每月40小时;而Al和Gus是义工,不拿工资。图1反应了上述情况。
StaffMember是抽象类,有一个抽象方法pay。
Manager类中的bonus代表红利;awardBonus方法用来增加红利。
Hourly类中的hoursWorked代表一个月工作的小时数;addHours方法用来增加小时数。
Staff类中的main方法用来驱动整个程序的运行;payDetail方法用来显示所有人的详细信息;构造方法用来初始化上述6个人,并将他们存储在staffMember类型的数组中。
每个类都有toString方法,用来返回该类的详细信息。要求你按照此图的继承关系定义每一个类,并最终显示所有人的详细信息。显示结果如下:


UML图

实现代码

Staff类

package experiment2;

public class Staff {
   
	 StaffMember []staffList;
	Staff(){
   
		staffList = new StaffMember[6];
		
		Manager x1 = new Manager();
		x1.setName("Sam");
		x1.setAddress("123 Main Line");
		x1.setPhone("555-0469");
		x1.setSocialSN("123-45-6789");
		x1.setPayRate(2423.07);
		x1.awardBonus(500);
		x1.pay();
		StaffMember t1 = x1;
		staffList[0] = t1;
		
		Employee x2 = new Employee();
		x2.setName("Peter");
		x2.setAddress("456 Off Line");
		x2.setPhone("555-0101");
		x2.setSocialSN("987-65-4321");
		x2.setPayRate(1246.15);
		StaffMember t2 = x2;
		staffList[1] = t2
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值