使用面向对象思想实现乐器弹奏,一需求乐手可联弹素不司的乐器旅发出不同的声音#可联弹秦的东器包括盖胡琴和琵蔬是义nstrument包插友法make sound()乐#类的計类湖Ehu装Piano和小提琴Violln.定文日企#数可以弹泰各种乐#play(instriment )测期试
时间: 2024-04-17 08:24:29 浏览: 130
面向对象思想是什么
4星 · 用户满意度95%
好的,根据你的要求,下面是一个使用面向对象思想实现乐器弹奏的例子。我们定义了一个乐手类 `Musician`,它可以弹奏同的乐器并发出不同声音。包括盖胡琴(Gaohu)和琵琶(Pipa)两种乐器。
```python
class Musician:
def play(self, instrument):
instrument.make_sound()
class Instrument:
def make_sound(self):
pass
class Gaohu(Instrument):
def make_sound(self):
print("盖胡琴发出声音")
class Pipa(Instrument):
def make_sound(self):
print("琵琶发出声音")
# 创建一个乐手对象
musician = Musician()
# 创建一个盖胡琴对象并让乐手弹奏
gaohu = Gaohu()
musician.play(gaohu)
# 创建一个琵琶对象并让乐手弹奏
pipa = Pipa()
musician.play(pipa)
```
在这个例子中,我们创建了一个乐手类 `Musician`,它有一个 `play` 方法,可以接收一个乐器参数,并调用乐器的 `make_sound` 方法。
然后,我们定义了一个乐器类 `Instrument`,它有一个 `make_sound` 方法。这个方法在基类中是空的,因为每个具体的乐器类都会实现自己的 `make_sound` 方法。
我们还定义了两个具体的乐器类,`Gaohu` 和 `Pipa`。它们分别继承自乐器类 `Instrument`,并实现自己的 `make_sound` 方法。
在主程序中,我们创建了一个乐手对象 `musician`。然后,我们分别创建了一个盖胡琴对象 `gaohu` 和一个琵琶对象 `pipa`。最后,让乐手通过调用 `play` 方法来弹奏这两个乐器。
当程序运行时,会输出盖胡琴和琵琶分别发出的声音。
希望这个例子对你有帮助!如果还有其他问题,请随时提问。
阅读全文