阅读以下说明和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
voidplay (Note n)
implements Instrument
extends Wind
Instrument[]
new