下载此文档

java 实验5 接口多态 实验报告.doc


文档分类:IT计算机 | 页数:约18页 举报非法文档有奖
1/18
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/18 下载此文档
文档列表 文档介绍
实验五 接口、多态与内部类
实验目标:
理解接口、塑型、多态的概念并能熟练应用;
熟练掌握接口的定义和使用;
深刻理解构造方法的调用顺序,理解编写时需要注意的问题;
了解并学会使用内部类
实验任务:
继承时的多态:目测给出下面代码的执行输出结果,并简单解释每一行输出的原因。
答:首先,该程序的主函数是Vehicle v=new Vehicle();即先声明并实例化一个汽车对象,();则是调用汽车的测试方法;而test方法里,Vehicle vc=new Car();是将上面的汽车指向了一个具体的小汽车对象;Bus vb=new Bus();将公共汽车指向了一个具体的公共汽车对象;drive();调用汽车的驾驶方法;();调用小汽车的驾驶方法;();调用公共汽车的驾驶方法;();();则是直接调用汽车的刹车方法。因而运行结
果如下:
A new bus.
Vehicle is driven
Car is driven
Bus is driven
Vehicle is braked
Vehicle is braked
,从面向对象的角度,将Instrument定义成接口,应怎样实现。编写能完成如图功能的程序,并再编写一个简单的应用程序进行多态性测试。(参考例子5-9;实验4该题是要求用抽象类来实现,在此要求用接口实现,还要进行多态性测试)
说明:Instrument表示乐器、Wind表示管乐器、Percussion敲击乐器、Stringed表示弦乐器、Woodwind表示木管乐器、Brass表示铜管乐器。
要求:(1)Instrument为接口,Wind为抽象类,其他为普通类。这里测试的目的是:我们知道当一个普通类实现一个接口时,必须实现该接口的全部方法,但当这个类是抽象类时,我们还需要实现该接口全部方法吗?如果不需要实现?那么是否直接不理这个方法就一,还是要将这个方法在自己类内部再标记一次为抽象方法。(听起来有点晕,测试很简单的,有时百读不如一试)
(2)请编写测试代码,对实现Instrument接口的各个类进行多态测试,具体可参考课本例子。所谓多态测试就是向上自动塑型,以及向下动态绑定,而动态绑定的基本规则是实例方法“由下往上”寻找绑定,类方法和类属性成员“由上往下”寻找绑定。(对其概念不清晰的请留意课本知识与课堂讲解)
该题代码如下:
package zi;
interface Instrument {
void play();
String what();
void adjust();
}
abstract class Wind implements Instrument {
public void play() {
("()");
}
public abstract String what() ;
public void adjust() {
("");
}
}
class Percussion implements Instrument {
public void play() {
("()");
}
public String what() {
return "()";
}
public void adjust() {
("()");
}
}

class Stringed implements Instrument {
public void play() {
("()");
}
public String what() {
return "()";
}
public void adjust() {
("()");
}
}
class Brass extends Wind {
public void play() {
("

java 实验5 接口多态 实验报告 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数18
  • 收藏数0 收藏
  • 顶次数0
  • 上传人慢慢老师
  • 文件大小697 KB
  • 时间2021-03-26