一篇文章学会Python函数重写,每天进步一个知识点

函数重写(override)

前提:必须有继承性

原因:

父类中的功能(函数),子类需要用,但是父类中函数的函数体内容和我现在要执行的逻辑还不相符

那么可以将函数名保留(功能还是此功能),但是将函数体重构;

注意:

子类重写父类的函数,除了函数体以外的部分,直接复制父类的即可

演示函数重写的使用以及格式:

class Fu:
    def test(self):
        print('九阳神功...')

class Zi(Fu):
    def test(self):
        print('九阳神功...')
        super().test()
        print('乾坤大挪移...')

#实例化子类对象
zi = Zi()
zi.test()

巩固函数重写的使用:

案例:描述新手机和旧手机之间的一些关系

#定义旧手机类
class OldPhone:
    #打电话:
    def call(self,name,msg):
        print('正在给%s打电话,内容为:%s' % (name,msg))

    #发短信:
    def sendMSG(self,name,msg):
        print('正在给%s发短信,内容为:%s' % (name,msg))

#定义新手机类
class NewPhone(OldPhone):
    # 打电话:
    def call(self, name, msg):
        print('显示归属地和大头贴')

    # 发短信:
    def sendMSG(self, name, msg):
        super().sendMSG(name,msg)
        print('正在发送表情包...')

#实例化子类对象:
np=NewPhone()
np.call('苍老师','约吗?')
np.sendMSG('小泽老师','么么哒!!')

学会了吗?不会关系,小编创建了一个Python学习交流QQ群:531509025,群里有大量基础入门知识,都是从零开始的,群里还有专业的人给你解答问题。寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!

你可能感兴趣的:(编程语言,python,函数)