实验名称java类的继承和多态.doc_第1页
实验名称java类的继承和多态.doc_第2页
实验名称java类的继承和多态.doc_第3页
实验名称java类的继承和多态.doc_第4页
实验名称java类的继承和多态.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验名称 java类的继承和多态实验名称 Java 类的继承和多态一、实验目的1、理解 Java 类的继承和多态的概念2、掌握类的继承机制的实现3、掌握方法的重载,以及多态的实现。二、实验要求1、本实验属于验证型和设计型实验。需要根据已给的源程序运行结果,并结合问题进行新的设计 ;2、对实验过程中提出的问题进行解答;3、完成实验报告。三、实验内容与过程1、上机运行下面的程序,并回答下面的问题。public class ClassOneint num=100;public void compute()num-=50;public static void main(String args)Clas

2、sOne one=new ClassOne();ClassTwo two=new ClassTwo();System.out.println(“num of ClassTwo: ”+two.num);System.out.println(“num of ClassOne: ”+two.getNum();pute();System.out.println(“num of ClassTwo: ”+two.num);System.out.println(“num of ClassOne: ”+two.getNum();class ClassTwo extends ClassOneint num=0;

3、public void plus()num+=50;public int getNum()return super.num;问题 :(1) 请指出 Java 面向对象编程中三个主要特性。(2) Java 中的继承机制是什么 ,(3) 请指出程序中关键字 super 的作用。 2 、运行下面的程序,回答问题。class Monkeyprivate int age=10;void speak()System.out.println(I am monkey.);class People extends Monkeyvoid computer(int a,int b)int c=a*b;System.

4、out.println(I can computer +a+*+b+=+c);void speak()System.out.println(I am human.);public class Excise7_2public static void main(String args)Monkey monkey=new People();monkey.speak();puter(10,12);People people=(People)monkey;puter(10,12);问题 :1、 上面的程序有一处错误,请改正使其能正确运行。2、 什么是对象的上转型对象,3、 在 Java 中能不能防止一个

5、类被继承, 若能,如何实现 ,4、 子类 People 具不具有父类 Monkey中属性 age, 若没有继承属性age,请修改程序使子类具有父类中的所有属性。3、阅读下面的程序,回答程序。class Computervoid compute(int a,int b)int c=a+b;System.out.println(a+b+=+c);void compute(double a,double b)double c=a+b;System.out.println(a+b+=+c);public class Excise7_3public static void main(String arg

6、)Computer c=new Computer();pute(10,20);pute(10.5,20.5);问题 :(1) 请解释“重载”的概念。(2) 假设在 main 方法中增加一条语句 pute( “java ”, ”program”); 后仍能正确执行,请完善上面的程序。4、运行下面的程序,回答问题。public class Excise7_4Person y=new Person();Person x=new Tang();Person z=new Tang(sun);Person t=new Tang(zhu,200);public static void main(String

7、 args)System.out.println(y=+y.getName();System.out.println(x=+x.getName();System.out.println(z=+z.getName();System.out.println(t=+t.getName();class PersonString name=new String(person);float height=1.75f;public String getName()return(name:+name+n+height:+height);class Tang extends PersonString name;

8、int weight;public Tang()name=tang;weight=75;public Tang(String name)=name;weight=75;public Tang(String name,int weight)=name;this.weight=weight;public String getName()return(name:+name+n+weight:+weight);问题 :(1) 上面程序定义对象的语句不正确,请指出,并给出原因。(2) 请用两种方法改正上面的程序,使其能正确执行。(3) 什么是多态 ,四、实验小结1、理解实验结果,回答实验内容中的问题;2、通过完成上述实验内容,你理解类的继承机制吗, 理解了覆盖、重载与多态吗 ?3、对上述实验内容进行小结,完成实验报告。五、思考与练习1. 父类 Box,子类 BoxWeight,计算输出子类对象的体积和重量。具体要求及步骤 :i. 定义类 Box,具有如下属性字段 : 宽度 (width) 、高度 (height) 、深度(depth);定义构造函数初始化这三个字段; 定义一个成员函数volume,计算

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论