#当父类名改动时,显然需要改动内容巨大,所以用super方法
#super()代替了父类名,也不需要传递参数self,父类名可以随意改动不影响
class Vehichle1:
Country='china'
#名字='ales'不好这样
def __init__(self,name,speed,load,power):
self.name=name
self.speed=speed
self.load=load
self.power=power
def run(self):
print('开动了')
class Subway(Vehichle1):#要有自己的心的参,其他全继承
def __init__(self,name,speed,load,power,line):
# self.name = name
# self.speed = speed
# self.load = load
# self.power = power
# Vehichle.__init__(self,name,speed,load,power)
super().__init__(name,speed,load,power)#
#super方法不需要加self,父类名改动时完全无影响
#self作为具体的实例内容
# 子类的调用父类的参数名直接调用,也要加上self
self.line=line
def showinfo(self):
print(self.name,self.line)
def run(self):
# Vehichle.run(self)#子类调用父类的方法,self必须加上
super().run()
print('%s开动了'%self.name)
line1=Subway('1号线','2km/h','23412人','电',12)
line1.showinfo()
line1.run()