问题: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