继承与接口,异常处理.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
继承与接口,异常处理

深 圳 大 学 实 验 报 告 课程名称: JAVA程序设计继承与接口,异常处理谭舜泉2010-11-02 实验报告提交时间: 2010-12-14 教务处制 一、实验目的与要求: 1、上转型对象:本实验的目的是让学生掌握上转型对象的使用。 2、接口回调:本实验的目的是让学生掌握接口回调技术。 3、异常处理:本实验的目的是让学生学习怎样定义异常类以及抛出异常。 二、实验要求: 1、上转型对象: 要求有一个abstract类,类名为Employee。Employee的子类有YearWork,MonthWorker和WeekWorker对象按年领取薪水,MonthWorker按月领取薪水,WeekWorker按周领取薪水。Employee类有一个abstract方法: Public abstracet earnings(); 子类必须重写父类的 earnings()方法,给出各自领取报酬的具体方式。 有一个Company类,该类用employee数组作为成员,employee数组的单元可以是YearWorker对象的上转型对象、MonthWorker对象的上转型对象或WeekWorker对象的上转型对象。程序能输出Company对象一年需要支付的薪水总额。 2、接口回调: 要求有一个ComputeTotalSales接口,该接口中有一个方法public double totalSalesByYear(),有三个实现该接口的类Television,Computer和Mobile。这三个类 通过实现接口computeTotalSales,给出自己的年销售额。 有一个Shop类,该类用computeTotalSales数组作为成员,computeTotalSales数组的单元可以存放Television对象的引用、Computer对象的引用或Mobile对象的引用。程序能输出Shop对象的年销售额。 3、异常处理: 要求声明定义两个Exception的异常子类:NoLowerLetter类和NoDigit类。再声明一个People类,该类中的void printLetter(char c)方法抛出NoLowerLetter异常类对象,void printDigit(char c)方法抛出NoDigit异常类对象。 三、实验源代码:(其中紫色部分为所添加的部分源码) 1、上转型对象: HardWork.java: public class HardWork { public static void main (String args[]) { Employee[] employee = new Employee[20]; for (int i = 0; i employee.length; i++){ if (i % 3 == 0) employee[i] = new WeekWorker(); if (i % 3 == 1) employee[i] = new MonthWorker(); if (i % 3 == 2) employee[i] = new YearWorker(); } Company company = new Company(employee); System.out.println(公司年工资总额:+company.salariesPay()); } } abstract class Employee{ public abstract double earnings(); } class YearWorker extends Employee{ //按年薪8万算 public double earnings(){ return 80000; } } class MonthWorker extends Employee{ //按月薪6000算,1年=12月:6000*12 = 72000 public double earnings(){ return 72000; } } class WeekWorker extends Employee{ //按周薪1000算,假设1年=48周:1000*48 = 48000 public double earnings(){ return 48000; } } class Company { Employee [] employee; double salaries=0; // public Company(Employee []employ

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档