Java 设计员工类Employee,假设现有教师、科学家2种员工类型,根据要求求出各人的全年收入。

Java 设计员工类Employee

每一个员工都有姓名(name)和每月的基本工资(salary)属性,有可以计算出全年收入的方法,假设现有教(Teacher),科学家(Scientist)2种员工类型.教师除基本工资外,还有课酬(元/天),科学家除基本工资外,还有年终奖,请你写出相关类,将各种类型的员工的全年收入打印出来。

父类:

public class Employee {
private String name;
 private int salary;  //每月工资
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
 public int getSalary() {
  return salary;
 }
 public void setSalary(int salary) {
  this.salary = salary;
 }
 
 public Employee() {
  super();
  // TODO Auto-generated constructor stub
 }
 
 public Employee(String name, int salary) {
  super();
  this.name = name;
  this.salary = salary;
 }
 public double annual() {
  return salary*12;
  }}

子类1:

public class Teacher extends Employee{
 private int dollars;  //日酬
 public int getDollars() {
  return dollars;
 }
 public void setDollars(int dollars) {
  this.dollars = dollars;
 }
 public Teacher() {
  super();
  // TODO Auto-generated constructor stub
 }
 public Teacher(String name, int salary,int dollars) {
  super(name, salary);
  this.dollars=dollars;
  // TODO Auto-generated constructor stub  
 }
 @Override
 public double annual() {
  // TODO Auto-generated method stub
  return super.annual()+dollars*365;
  
 }
 }

子类2:

public class Scientist extends Employee{
private int bonus;  //年终奖
public int getBonus() {
  return bonus;
 }
 public void setBonus(int bonus) {
  this.bonus = bonus;
 }
 public Scientist() {
  super();
  // TODO Auto-generated constructor stub
 }
 public Scientist(String name, int salary,int bonus) {
  super(name, salary);
  this.bonus=bonus;
  // TODO Auto-generated constructor stub
 }
 @Override
 public double annual() {
  // TODO Auto-generated method stub
  return super.annual()+bonus;
  }}

测试类:

public class EmployeeTest {
public static void main(String[] args) {
  // TODO Auto-generated method stub
  Teacher teacher=new Teacher("Tom", 10000, 100);
   System.out.println("教师总收入为:"+teacher.annual());

Teacher teacher2=new Teacher();
   teacher2.setDollars(100);
   teacher2.setSalary(10000);
   teacher2.setName("Tom");
   System.out.println("教师总收入为:"+teacher.annual());

Scientist scientist=new Scientist("Jim", 63000, 200000);
   System.out.println("科学家总收入为:"+scientist.annual());

Scientist scientist2=new Scientist();
   scientist2.setName("Jim");
   scientist2.setSalary(63000);
   scientist2.setBonus(200000);
   System.out.println("科学家总收入为:"+scientist.annual());
   }}

运行结果:

教师总收入为:156500.0
教师总收入为:156500.0
科学家总收入为:956000.0
科学家总收入为:956000.0
  • 5
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值