Bootstrap

使用面向对象思想实现乐器弹奏

需求:乐手可以弹奏不同的乐器从而发出不同的声音。可以弹奏的乐器包括二胡、钢琴和小提琴。定义一个乐器类,包括方法make_sound()。定义乐器类的子类:二胡、钢琴和小提琴,定义一个函数可以弹奏各类乐器,测试给乐手不同的乐器让他弹奏。

类的继承和多态、方法重写的应用。

代码如下:

class Instrument():
    def make_sound(self):
        pass

class Erhu(Instrument):
    def make_sound(self):
        print('二胡在弹奏')


class Piano(Instrument):
    def make_sound(self):
        print('钢琴在弹奏')


class Violin(Instrument):
    def make_sound(self):
        print('小提琴在弹奏')

def play(obj):
    obj.make_sound()

er=Erhu()
pia=Piano()
vio=Violin()

play(er)
play(pia)
play(vio)

运行结果如下:

;