如果想要获得父类的父类的属性,可以使用super吗?该怎样使用?能给出代码示范吗???
例如:
创建一个爸爸类Car
>>> class Car():
def __init__(self,name,brand,color,max_speed):
self.name = name
self.brand = brand
self.color = color
self.max_speed = max_speed
def owner(self):
print('%s拥有一辆小汽车'%self.name)
创建一个Car的儿子类 Tesla,但我希望儿子不是完全继承爸爸,他有特殊的能源供应方式--锂电池。于是我给儿子写了自己的__init__,这时候,父亲的name,brand等实例属性就没有了。那如何能找回来呢?用super(新样式,有新的,当然就有旧样式). super(Tesla,self).__init__(name,brand,color,max_speed),把儿子类名字写进super(儿子名,self).__init__(爸爸参数)
其实super就是重新调用父亲类的__init__一遍,就能让儿子重获爸爸的家产,继承他的遗产·~~拥有爸爸的属性