3 实验三 类的继承及多态

3 实验三 类的继承及多态

ID:6140156

大小:75.00 KB

页数:7页

时间:2018-01-04

3 实验三 类的继承及多态_第1页
3 实验三 类的继承及多态_第2页
3 实验三 类的继承及多态_第3页
3 实验三 类的继承及多态_第4页
3 实验三 类的继承及多态_第5页
资源描述:

《3 实验三 类的继承及多态》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验三:类的继承及多态一、实验目的1.掌握类的继承方法及上转型对象的方法调用。2.掌握this和super的区别及使用。3.理解抽象类的概念及作用,掌握接口的声明,实现及接口回调。。二、实验编程内容1.设计一个抽象类,声明有关算术运算的方法,并创建四个子类继承该抽象的类,完成进行加、减、乘、除四则运算。2.编写一个ComputerAverage抽象类,类中有一个抽象方法求平均分average,可以有参数。定义Gymnastics类和School类,它们都是ComputerAverage的子类,Gymnastics类中计算选手的平均成绩的方法

2、是去掉一个最低分,去掉一个最高分,然后求平均分。School中计算平均分的方法是直接是总分除以总科目。要求:定义ComputerAverage的对象为上转型对象,并调用重写的方法averge。3.编写一个类,该类有如下一个方法:publicintf(inta,intb){……//要求该方法将返回a和b的最大公约数},再编写一个该类的子类,要求子类重写方法f(),而且重写的方法将返回两个正整数的最小公倍数。要求:在重写的方法的方法体中需要调用被隐藏的方法返回a和b的最大公约数m,然后将(a*b/m)返回;在应用的程序的主类中分别使用父类和子类

3、创建对象,并分别调用方法f()计算两个正整数的最大公约数和最小公倍数。4编写一个圆锥类,能够计算圆锥的体积,要求圆锥类的构造函数中有一参数是圆类的一个对象。5定义接口Shape,其中包括Area方法。类Circle、Square和Triangle均实现了接口Shape。定义主函数,创建元素个数为3的Shape类型的一维数组,分别为数组元素创建Circle、Square和Triangle类型的对象,最后分别调用各数组元素的Area方法,输出相关信息。6定义一个接口,用于查询课程定义一个类Student,包括如下属性:学号(ID)、姓名(nam

4、e)、性别(Sex)、出生日期(birthDate)、专业(specialty)、课程(course),实现以下方法:每个属性的获取和定义,要求至少包含一个构造方法。定义一个接口类,定义方法query_course_catalog()用来查询课程。编写一个接口,定义相关选课操作,定义Student实现该接口。三、实验运行内容1.类的继承性(1)在某个路径下创建一个文件,定义一个Person类,一个Student类,通过子类扩展父类的功能。【源代码】classPerson{privateStringname;privateintage;pub

5、licvoidsetName(Stringname){this.name=name;}publicStringgetName(){returnname;}}classStudentextendsPerson{privateStringschool;publicvoidsetSchool(Stringschool){this.school=school;}publicStringgetSchool(){returnschool;}}publicclassExtendsDemo{publicstaticvoidmain(Stringargs[]

6、){Studentstu=newStudent();stu.setName("张三");stu.setSchool("清华大学");System.out.println("姓名:"+stu.getName()+",学校:"+stu.getSchool());}}⑵编译并运行该程序,观察运行的结果,参照下图。将姓名和年龄及学校改为自己的,观察运行结果。2.this和super的区别(1)在某个路径下创建一个文件,体会this和super的区别。【源代码】classPerson{publicStringname="张三";}classStude

7、ntextendsPerson{publicStringname="张童";publicvoidprint(){System.out.println("父类中属性:"+super.name);System.out.println("子类中属性:"+this.name);}}publicclassThisSuperDemo{publicstaticvoidmain(Stringargs[]){Studentstu=newStudent();stu.print();}}(2)编译并运行该程序,观察运行的结果,参照下图。3.抽象类⑴在某个路径下创

8、建一个文件,体会重写抽象类中的抽象方法。【源代码】abstractclassPerson{privateStringname;//定义name属性publicPerson(Str

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。