方萍3班实验

上传人:世*** 文档编号:152442940 上传时间:2020-11-23 格式:DOC 页数:13 大小:213KB
返回 下载 相关 举报
方萍3班实验_第1页
第1页 / 共13页
方萍3班实验_第2页
第2页 / 共13页
方萍3班实验_第3页
第3页 / 共13页
方萍3班实验_第4页
第4页 / 共13页
方萍3班实验_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《方萍3班实验》由会员分享,可在线阅读,更多相关《方萍3班实验(13页珍藏版)》请在金锄头文库上搜索。

1、Java程序设计实验四:继承、多态与接口1. 提交期限和方法期限:第12周周五(2015-11-27)23:59 pm 方法:由学习委员收集所有学生的实验报告,以电子档的形式提交给任课教师(发邮箱: )。2. 实验目的及要求掌握Java的基本数据类型、运算符、表达式和语句。运行环境:JDK1.7开发环境:Eclipse3. 实验内容及题目3.1 子类的继承与方法的重写【题1 中国人与美国人】在Eclipse 中创建名为Lab4的新项目,编写程序模拟中国人、美国人、北京人。除主类外,程序中有4个类:People、ChinaPeople、AmericanPeople和BeijingPeople类。

2、要求如下:(1)People类有权限是protected的double型成员变量:height和weight,以及public void speakHello( )、public void averageHeight( )和public void averageWeight( )方法。(2)ChinaPeople类是People类的子类,新增了public void chinaGongfu( )方法。要求ChinaPeople重写父类的public void speakHello ()、public void averageHeight( )和public void averageWeight

3、( )方法。(3)AmericanPeople类是People的子类,新增public void americanBoxing( )方法。要求AmericanPeople重写父类的public void speakHello( )、public void averageHeight( )和public void averageWeight( )方法。(4)BeijingPeople类是ChinaPeople的子类,新增public void beijingOpera( )方法。要求BeijingPeople重写父类的public void speakHello( )、public void a

4、verageHeight( )和public void averageWeight( )方法。运行效果如下图。按下列代码模板要求,将【代码】部分替换为Java程序代码。部分代码已给出:/People.javapublic class People protected double weight, height;public void speakHello() System.out.println(yayayaya);public void averageHeight()height = 173;System.out.println(average height: + height);publi

5、c void averageWeight()weight = 70;System.out.println(average weight: + weight);/ChinaPeople.javapublic class ChinaPeople extends Peoplepublic void speakHello() System.out.println(您好);public void averageHeight()height = 168.78;System.out.println(中国人平均身高: + height + 厘米);/重写public void averageWeight()方

6、法,输出:中国人平均体重:65 公斤/【代码1】public void chinaGongfu()System.out.println(坐如钟,站如松,睡如弓);/AmericanPeople.javapublic class AmericanPeople extends People /重写public void speakHello()方法,输出How do you do/【代码2】/重写public void averageHeight()方法,输出Americans average height:176 cm/【代码3】public void averageWeight()weight

7、 = 75;System.out.println(Americans average weight: + weight + kg);public void americanBoxing()System.out.println(直拳、勾拳、组合拳);/BeijingPeople.javapublic class BeijingPeople extends ChinaPeople /重写public void averageHeight()方法,输出北京人的平均身高:172.5 厘米/【代码4】/重写public void averageWeight()方法,输出北京人的平均体重:70 公斤/【代

8、码5】public void beijingOpera()System.out.println(花脸、青衣、花旦和老生);/Example.javapublic class Examplepublic static void main(String args) ChinaPeople chinaPeople = new ChinaPeople();AmericanPeople americanPeople = new AmericanPeople();BeijingPeople beijingPeople = new BeijingPeople();chinaPeople.speakHello

9、();americanPeople.speakHello();beijingPeople.speakHello();chinaPeople.averageHeight();americanPeople.averageHeight();beijingPeople.averageHeight();chinaPeople.averageWeight();americanPeople.averageWeight();beijingPeople.averageWeight();chinaPeople.chinaGongfu();americanPeople.americanBoxing();beijin

10、gPeople.beijingOpera();beijingPeople.chinaGongfu();【本题知识点】1. 子类的继承性;2. 子类对象的创建过程;3. 方法的继承与重写。【实验指导】1. 如果子类可以继承父类的方法,子类就有权利重写这个方法,子类通过重写父类的方法可以改变方法的具体行为。2. 方法重写时一定要保证方法的名字、类型、参数个数和类型同父类的某个方法完全相同,只有这样,子类继承的这个方法才被隐藏。3. 子类在重写方法时,不可以将实例方法更改成类方法,也不可以将类方法更改为实例方法,即如果重写的方法是static方法,static关键字必须要保留;如果重写的方法是实例方

11、法,重写时不可以用static修饰该方法。【学生解答】(1)程序代码:【代码1】public void averageWeight()weight = 65;System.out.println(中国人平均体重: + weight+公斤);【代码2】public void speakHello() System.out.println(How do you do);【代码3】public void averageHeight()height = 176;System.out.println(Americans average height:+height +cm);【代码4】public vo

12、id averageHeight()height = 172.5;System.out.println(北京人平均身高: + height + 厘米);【代码5】public void averageWeight()weight = 70;System.out.println(北京人平均体重: + weight+公斤);(2)运行结果截图:【思考题(选做)】People类中的public void speakHello( ), public void averageHeight( ), public void averageWeight( )三个方法的方法体中的语句是否可以省略?【答:】可以省

13、略.3.2 成员变量隐藏与super关键字【题2 银行与利息】在Lab4项目中,编写程序。验证教材第5章81页的【例 5-7】。假设银行Bank已经有了按整年year计算利息的一般方法,其中year只能取正整数。如按整年计算的方法:Double compuerInterest()interest = year * 0.35 * savedMoney;return interest;建设银行的天利息计算公式为:dayInterst = 天数 * 0.0001 * 存款数大连银行的天利息计算公式为:dayInterst = 天数 * 0.00012 * 存款数参照例子中的建设银行或大连银行,再编写

14、一个商业银行,让程序输出8000元存在商业银行8年零236天的利息。【知识点】1. 成员变量隐藏和方法重写;2. super关键字。【实验指导】1. 当super调用被隐藏的方法时,该方法中出现的成员变量是被子类隐藏的成员变量或继承的成员变量。2. 子类不继承父类的构造方法,因此,子类在其构造方法中需使用super来调用父类的构造方法,而且super必须是子类构造方法中的头一条语句,即如果在在子类的构造方法中,没有明显地写出super关键字来调用父类的某个构造方法,那么默认有“super( );”。3. 类中定义多个构造方法时,建议包括一个不带参数的构造方法,以便子类可以省略“super( );”。【学生解答】(1)商业银行的程序代码:class Bankint savedMoney;int year;double interest;public double computerInterest()interest = year*0.035*savedMoney;return interest;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号