python中super 奇思妙想

问题:super有什么用,用在什么场合?

解答:

        1.用在子类继承父类,却重写了父类的方法。导致不能得到父类的方法

        2.如何释放被子类覆盖的父类方法?  super()闪亮登场

            首先看看super(当前类name, self).父类方法name()

代码:

          

__mataclass__ = type #新式类定义方法
class Person(object):
    def __init__(self):
        self.area = 'China'
    def about(self,name):
        print('{} was born in {}'.format(name,self.area))
class Woman(Person):
    def __init__(self):
        super(Woman,self).__init__()
        self.hair = 'long'
    def about(self,name):
        print("{} is hot girl,she was born in {},she is {} hair ".format(name,self.area,self.hair))
        super(Woman, self).about(name)
yuan = Woman()
yuan.about('yuanjia')
yuanjia is hot girl,she was born in China,she is long hair 
yuanjia was born in China


转载于:https://my.oschina.net/pythonnnn/blog/652248

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值