编写程序实现乐手弹奏乐器。乐手可以弹奏不同的乐器从而发出不同的声音 可以弹奏的乐器包括二胡、钢琴和琵琶实现思路及关键代码 D定义乐器类Instrument,包括方法makeSound()2定义乐器类的子类: 胡Erhu、钢琴Piano和小提琴Violin 3定义乐手类Musician,可以弹奏各种乐器 play(Instrument i) 0定义测试类,给乐手不同的乐器让他弹奏
时间: 2023-07-10 15:22:06 浏览: 183
乐器演奏小程序
3星 · 编辑精心推荐
好的,下面是实现思路及关键代码:
```java
// 定义乐器类
public class Instrument {
public void makeSound() {
// 乐器发出的声音,由子类实现
}
}
// 定义二胡类
public class Erhu extends Instrument {
@Override
public void makeSound() {
System.out.println("二胡发出了美妙的声音!");
}
}
// 定义钢琴类
public class Piano extends Instrument {
@Override
public void makeSound() {
System.out.println("钢琴发出了清脆的声音!");
}
}
// 定义小提琴类
public class Violin extends Instrument {
@Override
public void makeSound() {
System.out.println("小提琴发出了悠扬的声音!");
}
}
// 定义乐手类
public class Musician {
public void play(Instrument i) {
i.makeSound();
}
}
// 测试类
public class Test {
public static void main(String[] args) {
Musician musician = new Musician();
Erhu erhu = new Erhu();
Piano piano = new Piano();
Violin violin = new Violin();
musician.play(erhu); // 乐手弹奏二胡
musician.play(piano); // 乐手弹奏钢琴
musician.play(violin); // 乐手弹奏小提琴
}
}
```
以上代码实现了乐手弹奏乐器的功能,乐手可以弹奏不同的乐器从而发出不同的声音。乐器类是一个抽象的基类,它包含了一个抽象的方法`makeSound()`,子类根据自己的特点实现这个方法,从而发出不同的声音。乐手类中有一个`play()`方法,接受一个乐器对象作为参数,根据乐器对象调用其`makeSound()`方法,从而让乐器发出声音。测试类中创建了一个乐手对象和三个不同的乐器对象,通过乐手对象调用`play()`方法来实现乐手弹奏不同的乐器。
阅读全文