问答题 【说明】
下面代码里,instr是一个抽象类,它被两个子类wind和rain分别实现,而brass又继承了wind类,并覆盖了play方法。
【程序】
(1) class instr
(2) Void play();

class wind (3) instr
void play()System.out.println("wind play!");

class rain extends instr
void play()System.out.println("rain play!");

class brass extends (4)
void play()System.out.println("brass play!"));

public class music
static void tuneAll(instr e[])
for(int i=0;i<e.length;i++)
e[i].play();

public (5) void main(String[]args)
instr orch[]=new instr[3];
int i=0;
orch[i++]=new wind();
orch[i++]=new rain();
orch[i++]=new brass();
tuneAll(orch);



【正确答案】(1)abstract (2)abstract (3)extends
(4)wind (5)static
【答案解析】[分析]
本题考查了Java抽象类的定义、继承,以及主函数定义的一些相关知识。
定义抽象类时只需在类标识符前加上关键字abstract即可,在Java语言中,抽象类中的方法也为抽象方法。因此,第(1)空与第(2)空的答案是abstract。
题目要求类wind和rain是抽象类instr的子类,即类wind和rain都继承抽象类instr,在Java语言中,对抽象类的继承用关键字extends,如果不能确定,还可以往下看程序,就清楚了。因此,第(3)空应该填extends。
又由于题目要求类brass继承类wind,第(4)空的答案也变得非常明显了,填写 wind。
第(5)空所在的位置是对Java语言的主函数的定义,Java语言中主函数也和其他一些高级语言一样,是入口函数,它的声明规定用public static void main(String[]args){}这种结构。因此,第(5)空答案是static。