【说明】 下面代码里,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。