python——方法重写 和 调用父类方法

本文介绍了Python中的方法重写,当父类方法不满足需求时,可以进行重写以实现定制功能。同时,文章讨论了如何在子类中调用父类的普通方法和属性,提供了3种不同的调用方式并展示了运行结果。

一、 方法重写

当父类中的方法不符合我们的需求时,可以通过重写,实现我们的需求

方法重写后,默认调用子类的方法

1. 方法重写

class Foo(object):
    def __init__(self):
        self.name = 'Foo'

    def hi(self):
        print('hi,Foo')

class Foo2(Foo):
    def hi(self):
        print('hi,Foo2')

if __name__ == '__main__':
    f = Foo2()
    f.hi()    #默认调用子类方法

结果:

hi,Foo2

二、调用父类的普通方法

3种方法详见代码注释

class Foo(object):
    def __init__(self):
        self.name = 'Foo'

    def hi(self):
        print('hi,Foo')

class Foo2(Foo):
    def hi(self):
        #Foo.hi(self) #方法1:在重写的方法内强制调用 父类名.父类方法名() 如果需要参数,则需要传参
        super(Foo2,self).hi() #方法2: super(子类名,子类对象).父类方法() 如果需要参数,则需要传参
        #super().hi()  #方法3:仅支持python3
        print('hi,Foo2')

if __name__ == '__main__':
    f = Foo2()
    f.hi()    #调用父类方法

结果:

hi,Foo
hi,Foo2

三、调用父类的——属性

同调用父类的普

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值