试题详情

阅读以下说明和Java程序,填补代码中的空缺,将解答填入答题纸的对应栏内。 [说明] 对部分乐器进行建模,其类图如下图所示,包括:乐器(Instrument)、管乐器(Wind)、打击乐器(Percussion)、弦乐器(Stringed)、木管乐器(Woodwind)、铜管乐器(Brass)。 类图 下面是实现上述设计的Java代码,其中音乐类(Music)使用各类乐器(Instrument)进行演奏和调音等操作。 [Java代码] enum Note{/*枚举各种音调*/ MIDDLE_C,C_SHARP,B_FLAT; //其他略 } interfaceInstrument {/*接口,乐器*/ ______; //play方法接口 void adjust(); //adjust方法接口 } class Wind ______{ public voidplay(Note n) { System.out.println("Wind.play()"+n); } public void adjust(){System.out.println("Wind.adjust()");} } /*类Percussion和Stringed实现代码略*/ class Brass ______{ public voidplay(Note n) {System.out.println("Brass.play()"+n); } public voidadjust(){System.out.println("BrasS.adjust()");) } Class Woodwindextends Wind{ publicvoidplay(Note n){System.out.println("Woodwind.play()"+n); } } public classMusic{ voidtune(Instrument_i){i.play(Note.MIDDLE_C.; } voidadjust(Instrument i){i.adjust(); } voidtuneAll(______ e){ for(Instrumenti:e){ adjust(i); tune(i); } } public Static voidmain(String[] args){ Music music=______ Music(); Instrument[]orchestra={new Wind(), new Woodwind() }; music.tuneAll(orchestra); } } 本程序运行后的输出结果为: Wind.adjust() Wind.play()MIDDLE_C Wind.adjust() Woodwind.play()MIDDLE_C