阅读以下说明和Java程序,填补代码中的空缺(1)~(5),将解答填入答题纸的对应栏内。 【说明】
- 发布时间:
- 浏览:118
- 来源:大数据
阅读以下说明和Java程序,填补代码中的空缺(1)~(5),将解答填入答题纸的对应栏内。 【说明】 对部分乐器进行建模,其类图如图6-1所示,包括:乐器(Instrument)、管乐器(Wind)、打击乐器(Percussion)、弦乐器(Stringed)、木管乐器(Woodwind)、铜管乐器(Brass)。图6-1 类图 下面是实现上述设计的Java代码,其中音乐类(Music)使用各类乐器(Instrument)进行演奏和调音等操作。 【Java代码】 enum Note{ /* 枚举各种音调 */ MIDD[LE_C, C_SHARP, B_FLAT; //其他略 } interface Instrument { /* 接口,乐器 */ (1) ; //play方法接口 void adjust() ; //adjust方法接口 } class Wind (2) { public void play(Note n) { System.out.println("Wind.play()"+n); } public void adjust() { System.out.println("Wind.adjust()"); } } /* 类Percussion和Stringet实现代码略 */ class Brass (3) { public void play(Note n) { System.out.println("Brass.play()"+n); } public void adjust () { System.out.println("Brass.adjust()"); } } class Woodwind extends Wind { public void play (Note n) { System.out.println("Woodwind.play()"+n); } } public void tune(Instrument i) { i.play(Note.MIDDLE_C); } void adjust(Instrument i) { i.adjust(); } void tuneAll (4) e ) { class Music { for(lnstrument i : e) { adjust(i); tune(i); } } public static void main(String[] args) { Music music= (5) Music(); Instrument[] orchestra={ new Wind(), new Woodwind() }; music.tuneAll(orchestra); } 奉程序运行后的输出结果为: Wind.adjust() Wind.play() MIDDLE_C Wind.adjust() Woodwind.play() MIDDLE_C 请帮忙给出正确答案和分析,谢谢!答案
解析