java实验 类的继承、抽象类、上转型对象 、接口.doc

java实验 类的继承、抽象类、上转型对象 、接口.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java实验 类的继承、抽象类、上转型对象 、接口.doc

2013 学年— 2014 学年第 1学期 Java语言B实验报告书 专 业: 班 级: 姓 名: 学 号: 实验地点: 任课教师: 实验题目:类的继承、抽象类、上转型对象 、接口 实验环境: Windows2000/XP;局域网 实验要求: 1. 对所有实验内容中涉及到的命令均要亲自实践,对照实验指导书进行。 2. 把实验中出现的问题以及最后解决的情况反馈到实验报告中。 3. 程序作业的源代码要求反馈到实验报告中。 实验内容及实现方法: 使用抽象类实现如下程序: 按模板要求,将【代码1】~Java程序代码。 使用抽象类实现HardWork.java程序步骤: (1)首先新建项目HardWork.java,添加类,然后添加代码。 (2)重写earnings( )方法,代码为public double earnings(){return xxxx.0;}; (3)计算公司年工资总额salaries时,引入了instanceof,用于判断对象的类型是YearWorker、MonthWorker还是WeekWorker,从而相应的分别乘以1、12、52计算工资。 (4)在判断哪些工人领哪种工资时,用了一个循环 for(int i=0;iemployee.length;i++), 当i能被3整除时,初始化一个WeekWorker对象存放到employee[i]位置。 当i除以3余1时,初始化一个MonthWorker对象存放到employee[i]位置。 当i除以3余2时,初始化一个YearWorker对象存放到employee[i]位置。 在这个过程中,employee数组的单元是 WeekWorker、 MonthWorker、YearWorker的上转型对象。 源代码: abstract class Employee //抽象类 { public abstract double earnings( ); //抽象类方法earnings(工资) } class YearWorker extends Employee { // 重写earnings( )方法,返回年薪值 按年领取薪水 public double earnings(){return 60000.0;} } class MonthWorker extends Employee { // 重写earnings( )方法,返回月薪值 按月领取薪水 public double earnings(){return 4000.0; } } class WeekWorker extends Employee { // 重写earnings( )方法,返回周薪值 按周领取薪水 public double earnings(){return 1250.0; } } class Company //公司类 { Employee[ ] employee; //员工数组 double salaries=0; //总工资 Company(Employee[ ] employee) { this.employee=employee;//初始化 } public double salariesPay( ) { salaries=0; // 计算公司年工资总额salaries 每个员工的工资加起来 for(int i=0;iemployee.length;i++) { //instanceof测试对象类型 if(employee[i] instanceof YearWorker ) salaries=salaries+employee[i].earnings(); if(employee[i] instanceof MonthWorker ) salaries=salaries+employee[i].earnings()*12; if(employee[i] instanceof WeekWorker ) salaries=salaries+employee[i].earnings()*52;

文档评论(0)

基本资料 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档