2018-12-12
Cola公司的雇员分为以下若干类:(知识点:多态) [必做题]
4.1 ColaEmployee :这是所有员工总的父类,属性:员工的姓名,员工的生日月份。方法:getSalary(int month) 根据参数月份来确定工资,如果该月员工过生日,则公司会额外奖励100 元。
4.2 SalariedEmployee : ColaEmployee 的子类,拿固定工资的员工。属性:月薪
4.3 HourlyEmployee :ColaEmployee 的子类,按小时拿工资的员工,每月工作超出160 小时的部分按照1.5 倍工资发放。属性:每小时的工资、每月工作的小时数
4.4 SalesEmployee :ColaEmployee 的子类,销售人员,工资由月销售额和提成率决定。属性:月销售额、提成率
4.5 定义一个类Company,在该类中写一个方法,调用该方法可以打印出某月某个员工的工资数额,写一个测试类TestCompany,在main方法,把若干各种类型的员工放在一个ColaEmployee 数组里,并单元出数组中每个员工当月的工资。

//4、 Cola公司的雇员分为以下若干类:
//4.1  ColaEmployee :这是所有员工总的父类,属性:员工的姓名,员工的生日月份。
//方法:getSalary(int month) 根据参数月份来确定工资,如果该月员工过生日,则公司会额外奖励100 元。
//public class ColaEmployee {public String name;public int birth;public double getSalary(int month) {double s=0;if(this.birth==month) {s=100;}return s;}}
//4.2  SalariedEmployee : ColaEmployee 的子类,拿固定工资的员工。属性:月薪
public class SalariedEmployee extends ColaEmployee {public double salary_month;public double getSalary(int month) {return salary_month+super.getSalary(month);}
}
//4.3  HourlyEmployee :ColaEmployee 的子类,按小时拿工资的员工,
//每月工作超出160 小时的部分按照1.5 倍工资发放。
//属性:每小时的工资、每月工作的小时数
public class HourlyEmployee extends ColaEmployee {public double salary_hour;public double hour;public double getSalary(int month) {if(hour>160) {return salary_hour*160+(hour-160)*salary_hour*1.5+super.getSalary(month);}else {return salary_hour*hour+super.getSalary(month);}}}
//4.4  SalesEmployee :ColaEmployee 的子类,销售人员,工资由月销售额和提成率决定。
//属性:月销售额、提成率
public class SalesEmployee extends ColaEmployee {public double sale_month;public double percent;public double getSalary(int month) {return sale_month*percent+super.getSalary(month);}
}
//4.5  定义一个类Company,在该类中写一个方法,调用该方法可以打印出某月某个员工的工资数额,
//写一个测试类TestCompany,在main方法,
//把若干各种类型的员工放在一个ColaEmployee 数组里,并单元出数组中每个员工当月的工资。public class Company {public void money(ColaEmployee arr[],int month) {for(int i=0;i<arr.length;i++) {double company=arr[i].getSalary(month);System.out.println(month+"月"+arr[i].name+"的工资是:"+company);}}}
import java.util.Scanner;public class TestCompany {public static void main(String[] args) {Company c=new Company();Scanner input=new Scanner(System.in);System.out.println("请输入要查询的月份:");int m =input.nextInt();SalariedEmployee ae=new SalariedEmployee();HourlyEmployee he=new HourlyEmployee();SalesEmployee se=new SalesEmployee();ColaEmployee[] ce=new ColaEmployee[] {ae,se,he};ae.birth=10;ae.name="王铁夫";ae.salary_month=1000;se.sale_month=1000;se.birth=11;se.name="孙赫阳";se.percent=1.5;he.birth=12;he.name="孙宸";he.hour=300;he.salary_hour=10;c.money(ce, m);

2018-12-12相关推荐

  1. 2018年12月,华为HCNP大面积更新题目,军哥独家解题咯

    2018年12月,华为HCNP大面积更新题目,乾颐堂军哥独家解题咯 2018年是华为认证变动比较大的一年,华为认证走过这几年不得不说是有一定进步的,而且最近华为孟女侠确实让我也小小的骄傲了一把,所以当 ...

  2. 2018年12月份学习总结,PMP学习总结

    本文摘录2018年12月份学习总结,创建日期:2019-04-15 17:09:30,有修改. 这是一个在2018年报考.学习PMP的总结,小小的在内网的分享.2021-01-21 22:11:20 ...

  3. 20172319 2018.10.12《Java程序设计教程》第6周课堂实践(补写博客)

    20172319 2018.10.12 <Java程序设计教程>第6周课堂测验 课程:<程序设计与数据结构> 班级:1723 学生:唐才铭 学号:20172319 指导老师:王 ...

  4. 【活动(深圳)】告别2018之12.22 大湾区.NET Meet 大会 ,同时有网络直播

    今年的 Connect(); 主题更加聚焦开发者工具生产力.开源,以及无服务器(Serverless)云服务. Visual Studio 2019 AI 智能加持的 IntelliCode.实时代码 ...

  5. 实习期间的一些思考整理(3)2018.4.12~4.13

    青云诀游戏体验日报-2018.4.12 今日关键点:核心玩法 青云诀的核心玩法是"战斗"."成长"."探索"(这三点也是RPG类型的要素), ...

  6. 训练日志 2018.9.12

    大二的课确实是紧,每天除了上课就是写作业,一直没有连续的时间能坐下来写题,这几天用教练交的方法,利用零碎的时间重新好好看了一遍数位 DP,晚上 A 了两道题感觉还不错,也算比较得心应手,接下来的尽量每 ...

  7. 暑期训练日志----2018.8.12

    训练第14天. 基本咸鱼了一个星期,一直划水... 明天开始爆肝... 2018.8.12

  8. 2018年12月份GitHub上最热门的Java开源项目

    2018年12月份GitHub上最热门的Java开源项目 又到了公布 GitHub 上热门项目的时候啦~在 12 月的排行中,现在,一起来看看这些项目你使用过哪些呢? JavaGuide https: ...

  9. 2018年12月精选文章目录一览

    ↑ 点击上方[计算机视觉联盟]关注我们 文章太多,想要浏览历史消息很痛苦,今天小编整理了2018年12月的精选文章,让盟友们不再困扰一个一个翻阅(再也翻不到头,总感觉后边还有干货,O(∩_∩)O哈哈~ ...

  10. 2018年android手机版本统计,安兔兔发布2018年12月Android手机性能排行榜

    今天,安兔兔根据后台统计到的数据,公布了 2018 年 12 月份Android手机性能榜,这份 2018 年的最终榜单有哪些手机能够杀入前十呢?拭目以待吧. 注:本文图表中的安兔兔跑分(v7 版)均 ...

最新文章

  1. 指纹锁就安全了?防火防盗还得防AI
  2. Winform开发框架之系统重新登录、自动登录实现
  3. CTFshow 反序列化 web262
  4. Activity两个启动方法的区别
  5. 最小二乘与最大似然估计之间的关系
  6. 863. 二叉树中所有距离为 K 的结点
  7. Serverless的初心、现状和未来
  8. Android camera(4)---Android Camera开发之基础知识篇
  9. alpine linux安装桌面,Alpine linux硬盘安装
  10. typecho运行html插件,typecho主题集成HTML压缩功能
  11. python 物联网服务器_python+树莓派实现IoT(物联网)数据上传到服务器
  12. NSMethodSignature, NSInvocation源码分析
  13. linux shell 编程 14 删除日志文件
  14. BackTrack4安装中文语言包
  15. 简易矩阵乘法计算器2.0
  16. AIC、BIC、QAIC及HQ准则
  17. win11如何设置空间音效 windows11设置空间音效的步骤方法
  18. 允许计算机远程桌面连接数,win7连接远程桌面提示超出了最大允许连接数的解决方法...
  19. C语言实现简单的航空订票、退票系统
  20. android 使用epublib开源框架解析epub文件(章节内容、书籍菜单)

热门文章

  1. 在linux系统,用FTP工具下载文件
  2. 三款开源关系型数据库对比:MySQL、PostgreSQL、SQLite
  3. Nexus私服仓库快速添加第三方jar包
  4. 快乐数happy-number
  5. [CUPT]国一博主, 教你求解95%以上的方程(数值解)
  6. 201621123031 《Java程序设计》第7周学习总结
  7. 最全FC交换机基础知识详解
  8. 如何向一个普通人说明什么是物联网?
  9. cat 几行_网约车留言本上的1687条暖心留言 几行字载不住生活的酸甜苦辣
  10. 搭建spring config的坑 记录一下