- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 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
您可能关注的文档
最近下载
- 四川省宜宾市2023-2024学年高一下学期期末学业质量监测语文试卷(原卷版+解析版).docx VIP
- 四川省宜宾市高一入学语文分班考试真题含答案.docx VIP
- 四川省宜宾市2024_2025学年高一语文下学期期末考试试题含解析.doc VIP
- 2011-2021年浙江工商大学《432统计学》[专业硕士]历年考研真题汇总(含部分答案).pdf VIP
- 高频精选:京东快递员ai面试题及答案解析.doc VIP
- 四川省宜宾市高一(下)期中语文试卷 .pdf VIP
- 河北 2023年农村信用社真题模拟汇编(共270题).doc VIP
- 四川省宜宾市四中高一下学期期末语文试题2.docx VIP
- 河北 2023年农村信用社真题模拟汇编(共228题).doc VIP
- 中考数学总复习.doc VIP
文档评论(0)