实验报告(实验二)

2020-04-14 00:24

北 京 林 业 大 学

2013 学年— 2014 学年第 2学期 Java程序设计基础实验

报告书

专 业: 电子 班 级: 电子 姓 名: 学 号:

实验地点: 任课教师: 黄儒乐

实验题目:类的继承、抽象类、上转型对象 、接口

实验环境: Windows2000/XP;局域网 实验要求:

1. 对所有实验内容中涉及到的命令均要亲自实践,对照实验指导书进行。 2. 把实验中出现的问题以及最后解决的情况反馈到实验报告中。 3. 程序作业的源代码要求反馈到实验报告中。

实验内容:

1. 使用抽象类实现如下程序:

按模板要求,将【代码1】~【代码6】替换为Java程序代码。

HardWork.java

abstract class Employee {

public abstract double earnings( ); }

class YearWorker extends Employee {

【代码1】 // 重写earnings( )方法,返回年薪值 }

class MonthWorker extends Employee {

【代码2】 // 重写earnings( )方法,返回月薪值 }

class WeekWorker extends Employee

{

【代码3】 // 重写earnings( )方法,返回周薪值 }

class Company {

Employee[ ] employee; double salaries=0;

Company(Employee[ ] employee) {

this.employee=employee; }

public double salariesPay( ) {

salaries=0;

【代码4】 // 计算公司年工资总额salaries return salaries; } }

public class HardWork {

public static void main(String args[ ]) {

【代码5】创建Employee[ ] employee对象,数组的初始化长度通过args[]参数来传递 for(int i=0;i

【代码6】当i能被3整除时,初始化一个WeekWorker对象存放到employee[i]位置。

当i除以3余1时,初始化一个MonthWorker对象存放到employee[i]位置。 当i除以3余2时,初始化一个YearWorker对象存放到employee[i]位置。

}

Company company=new Company(employee);

System.out.println(\公司年工资总额:\ } }

2. 将抽象类改为接口,改造上述程序:

要求:新的程序命名为HardWork2.java,package 设置为demo

一 、抽象类

1.源代码

abstract class Employee {

public abstract double earnings(); }

class YearWorker extends Employee{ public double earnings(){ double salary=81; return salary; } }

class MonthWorker extends Employee{ public double earnings(){ double ms=6; return ms*12; } }

class WeekWorker extends Employee{ public double earnings(){ double ws=1; return ws*4*12; } }

class Company{

Employee[] employee; double salaries=0;

Company(Employee[] employee) { this.employee=employee; }

public double salariesPay() { salaries=0; for(int i=0;i

return salaries; } }

public class HardWork{

public static void main(String args[]){ Employee[] employee=new Employee[9]; for(int i=0;i

employee[i]=new WeekWorker(); else if(i%3==1) employee[i]=new MonthWorker(); else if(i%3==2) employee[i]=new YearWorker(); } Company company=new Company(employee); System.out.println(\公司年工资总额:\+company.salariesPay()); } }

2.运行结果

二 、接口类

1.源代码

package demo;

abstract interface Employee {

public abstract double earnings(); }

class YearWorker implements Employee{ public double earnings(){ double salary=101; return salary; } }

class MonthWorker implements Employee{ public double earnings(){ double ms=6; return ms*12; } }

class WeekWorker implements Employee{ public double earnings(){ double ws=1; return ws*4*12; } }

class Company{

Employee[] employee; double salaries=0;

Company(Employee[] employee) { this.employee=employee; }

public double salariesPay() { salaries=0; for(int i=0;i

return salaries; } }

public class HardWork2{

public static void main(String args[]){ Employee[] employee=new Employee[21];

}

for(int i=0;i

Company company=new Company(employee);

System.out.println(\公司年工资总额:\+company.salariesPay());

}

2.运行结果

三、 出现的问题

四、 结论分析


实验报告(实验二).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:国际贸易法与典型案例解析

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: