欢迎来到天天文库
浏览记录
ID:9964457
大小:66.50 KB
页数:7页
时间:2018-05-17
《实验三 继承、多态与接口》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验三继承、多态与接口一、实验目的1.掌握Java的继承机制;2.掌握对象引用的多态方法;3.掌握接口的特点、结构和调用;4.掌握接口和继承的混合使用。二、实验要求1.编写体现类的继承性(成员变量、成员方法、成员变量隐藏)的程序。2.编写体现类的多态性(成员方法重载、构造方法重载)的程序。3.编程使用系统接口的技术和创建自定义接口的方法。三、实验内容 (一)类的继承性练习1.理解继承的含义新类可从现有的类中产生,并保留现有类的成员变量和方法并可根据需要对它们加以修改。新类还可添加新的变量和方法。这种现象就称为类的继承。当建立一个新类时,不必写出全部成员变量和成员方
2、法。只要简单地声明这个类是从一个已定义的类继承下来的,就可以引用被继承类的全部成员。被继承的类称为父类或超类(superclass),这个新类称为子类。Java提供了一个庞大的类库让开发人员继承和使用。设计这些类是出于公用的目的,因此,很少有某个类恰恰满足你的需要。你必须设计自己的能处理实际问题的类,如果你设计的这个类仅仅实现了继承,则和父类毫无两样。所以,通常要对子类进行扩展,即添加新的属性和方法。这使得子类要比父类大,但更具特殊性,代表着一组更具体的对象。继承的意义就在于此。2.创建公共类SY3_1_Pl 编写程序文件SY3_1_P.java,源代
3、码如下:publicclassSY3_1_P{protectedStringxm;//具有保护修饰符的成员变量protectedintxh;voidsetdata(Stringm,inth){//设置数据的方法xm=m;xh=h;}publicvoidprint(){//输出数据的方法System.out.println(xm+","+xh);}}l 编译SY3_1_P.java,产生类文件SY3_1_P.class。3.创建继承的类l 程序功能:通过SY3_1_P类产生子类SY3_2,其不仅具有父类的成员变量xm(姓名)、xh(学号),还
4、定义了新成员变量xy(学院)、xi(系)。在程序中调用了父类的print方法,同时可以看出子类也具有该方法。l 编写SY3_2.java程序,源代码如下:classSY3_2extendsSY3_1_P{protectedStringxy;protectedStringxi;publicstaticvoidmain(Stringargs[]){SY3_1_Pp1=newSY3_1_P();p1.setdata("帅零",12321);p1.print();;s1.setdata("郭丽娜",12345);//调用父类的成员方法s1.xy="经济管理学院
5、";//访问本类的成员变量s1.xi="信息管理系";//访问本类的成员变量s1.print();System.out.print(s1.xm+","+s1.xy+","+s1.xi);}}l 编译并运行程序注意:公共类SY3_1_P与SY3_2类要在同一文件夹(路径)内。(二)类的多态性练习1. 理解类的多态性类的继承发生在多个类之间,而类的多态只发生在同一个类上。在一个类中,可以定义多个同名的方法,只要确定它们的参数个数和类型不同。这种现象称为类的多态。多态使程序简洁,为程序员带来很大便利。在OOP中,当程序要实现多个相近的功能时,就给相应的方法起
6、一个共同的名字,用不同的参数代表不同的功能。这样,在使用方法时不论传递什么参数,只要能被程序识别就可以得到确定的结果。类的多态性体现在方法的重载(overload)上,包括成员方法和构造方法的重载。2. 方法的重载方法的重载是指对同名方法的不同使用方式。l 程序功能:对不同的数进行排序输出。在IntSort类中定义3个同名的方法sort,l 编写SY3_3.java文件,源代码如下:importjava.awt.Graphics;importjava.applet.Applet;classIntSort{publicStringsort(i
7、nta,intb){if(a>b)returna+""+b;elsereturnb+""+a;}publicStringsort(inta,intb,intc){intswap;if(a
8、h-1;j
此文档下载收益归作者所有