实验六 继承与抽象类 HardWork
/* 按以下要求补充代码。
① 定义一个抽象(abstract)类,类名为 Employee。 Employee 的子类有 YearWorker、
MonthWorker 和 WeekWorker。
② YearWorker 对象按年领取薪水 (每年 15 万),MonthWorker 对象按月领取薪水(每月
1 万),WeekWorker 对象按周领取薪水(每周 0.5 万,设定一个月 4 周)。
③ Employee 类有一个抽象方法: public abstract double earnings(); 子类必须重写父类
的 earnings()方法,给出各自领取每年报酬的具体方式。
④ 定义一个 Company 类,该类用 Employee 数组作为成员,Employee 数组元素可以存
储 YearWorker 对象、MonthWorker 对象、WeekWorker 对象。
⑤ 程序能输出 Company 对象一年需要支付的薪水总额。
*/
package 实验六继承和抽象类;
import java.util.Random;
abstract class Employee {public abstract double earnings();}
class YearWorker extends Employee {public double earnings() {return 150000.00; //重写 earnings()方法}
}class MonthWorker extends Employee {public double earnings() {return 10000*12; //重写 earnings()方法}
}class WeekWorker extends Employee {public double earnings() {return 5000*4*12; //重写 earnings()方法}
}class Company {Employee[] employees;double salaries = 0;Company(Employee[] employees) {this.employees = employees;
}public double salariesPay() {salaries = 0;for(Employee sum:employees ) salaries+=sum.earnings();//计算 salariesreturn salaries; //foreach语句和i=0;i<xxx;i++;等价
}
}public class HardWork {public static void main(String[] args) {Employee[] employees = new Employee[20];//随机产生 20 个 YearWorker、MonthWorker 和 WeekWorker 对象赋值给数组for (int i = 0; i < employees.length; i++) {Random flag=new Random(); switch(flag.nextInt(2)) {case 0:employees[i]=new YearWorker();break; case 1:employees[i]=new MonthWorker();break;case 2:employees[i]=new WeekWorker();}}
Company company = new Company(employees);
System.out.println("公司年工资总额:" + company.salariesPay());
}
}
实验六 继承与抽象类 HardWork相关推荐
- 实验六201771010101 白玛次仁
第五章 继承 总结 实验六 继承定义与使用实验时间 2018-9-28 1.类,超类与子类 继承Employee类来定义Manager类格式,关键字extends表示继承. Class新类名(子类(s ...
- C++实验六:继承,对BMP图片操作
功能介绍: 图片翻转.旋转.剪切.任意缩放.图片相加.图片相减等等 复杂功能解释基本都写在注释中了,对于图片缩放,可谓本次实验之精华(搞人心态) 其次,关于resize函数的重载,应该private掉 ...
- 《Java技术》第三次作业--面向对象——继承、抽象类、接口
1.阅读下面程序,分析是否能编译通过?如果不能,说明原因.应该如何修改?程序的运行结果是什么?为什么子类的构造方法在运行之前,必须调用父 类的构造方法?能不能反过来? class Grandparen ...
- Java模式设计卖电脑实验报告,面向对象(Java)实验0继承、接口和多态
<面向对象(Java)实验0继承.接口和多态>由会员分享,可在线阅读,更多相关<面向对象(Java)实验0继承.接口和多态(11页珍藏版)>请在金锄头文库上搜索. 1.电子信息 ...
- 13 面向对象-继承与抽象类
第01天 java面向对象 今日内容介绍 继承 抽象类 第1章 继承 1.1 继承的概述 在现实生活中,继承一般指的是子女继承父辈的财产.在程序中,继承描述的是事物之间的所属关系,通过继承可以 ...
- JAVA实验6继承与接口,java实验6继承与接口
少年易学老难成,一寸光阴不可轻- 百度文库 1 山西大学计算机与信息技术学院 姓名学号专业班级 课程名称 Java实验实验日期成绩指导教师批改日期实验名称实验 6 继承与接口 [实验目的] 1.掌握j ...
- 深度学习 实验六 卷积神经网络(1)卷积 torch.nn
目录 第5章 卷积神经网络 5.1 卷积 5.1.1 二维卷积运算 5.1.2 二维卷积算子 5.1.3 二维卷积的参数量和计算量 5.1.4 感受野 5.1.5 卷积的变种 5.1.5.1 步长(S ...
- 笔记整理3----Java语言高级(三)11 综合练习+12 面向对象-static变量 与 代码块+13 面向对象-继承与抽象类+14 面向对象-接口与多态+15 面向对象-包修饰符
11 综合练习+12 面向对象-static变量 与 代码块+13 面向对象-继承与抽象类+14 面向对象-接口与多态+15 面向对象-包&修饰符 第11天 综合练习 今日内容介绍 综合练习 ...
- NNDL 实验六 卷积神经网络(3)LeNet实现MNIST 手动算子部分
手写体数字识别是计算机视觉中最常用的图像分类任务,让计算机识别出给定图片中的手写体数字(0-9共10个数字).由于手写体风格差异很大,因此手写体数字识别是具有一定难度的任务. 我们采用常用的手写数字识 ...
最新文章
- 全能音乐助手序列号_颜控最爱的全能本 惠普星14全能轻薄本深度解析
- 12.委托是什么?委托的property声明用什么属性?为什么?
- jQuery的核心函数
- 视频豪横时代,应用如何快速构建视频点播能力?
- 一篇文章看懂@Scheduled定时器/@Async/CompletableFuture
- [原創]全面的權限控制方法(功能權限+數據權限+特殊權限(行,列))
- 大数据技术原理与应用 第三版 林子雨 期末复习(一)大数据概述 第一章 P2
- dos2unix 目录
- 根据图片地址上传图片
- 使用BS4爬取智联招聘
- Linux面试基础知识--汇总
- R语言使用Predict函数计算指定连续变量和风险比HR值的关系、基于限制性立方样条分析方法、限制性立方样条cox回归模型
- 企业微信发送图片失败
- OpenCV中视频操作及人脸识别案例
- 你总是喜欢抓不住的东西
- Navicat 连接 MySql 报错2059时的解决方法
- 给大家分享一款非常漂亮的博客
- 雕刻机简单加工G指令生成器
- matlab两轮自平衡小车,两轮自平衡小车(全部设计资料+设计分析)
- Linux buffer/cache解读
热门文章
- 数能低压 1.5A单通道 LED驱动IC芯片 NU405应用电路
- 利用python爬取图片并下载到本地
- stream benchmark 介绍
- 内网代理的系列二:frp(socks5)+Proxifier
- 关键词分词工具_打破繁琐,采用智能分词——厚昌网络分词工具2.0版即将正式上线...
- [Python3]三子棋游戏!祝大家中国71周年国庆节快乐!
- nightwatch系列教程01——Hello Nightwatch
- Ajax 跨域难题 - 原生 JS 和 jQuery 的实现对比
- 什么是深度学习(Deep Learning)
- 网路游侠:又一次简单的社会工程学***