方法一:指名道姓,即父類名.父類方法()coding
class Vehicle: #定義交通工具類 Country='China' 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(Vehicle): #地鐵 def __init__(self,name,speed,load,power,line): Vehicle.__init__(self,name,speed,load,power) #調用父類的構造函數(初始化) self.line=line def run(self): print('地鐵%s號線歡迎您' %self.line) Vehicle.run(self) #調用父類的方法run() line13=Subway('中國地鐵','180m/s','1000人/箱','電',13) line13.run() class Vehicle: # 定義交通工具類 Country = 'China' def __init__(self, name, speed, load, power): self.name = name self.speed = speed self.load = load self.power = power def run(self): print('開動啦...')
方法二:super()方法
class Vehicle: #定義交通工具類 Country='China' 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(Vehicle): # 地鐵 def __init__(self, name, speed, load, power, line): # super(Subway,self) 就相當於實例本身 在python3中super()等同於super(Subway,self) super().__init__(name, speed, load, power) #可以不用寫父類名,且省去self參數,默認會傳入 self.line = line def run(self): print('地鐵%s號線歡迎您' % self.line) super(Subway, self).run() #=== super().run() class Mobike(Subway): # 摩拜單車 def a(self): super(Mobike, self).run() #調用地鐵類的run方法 line13 = Subway('中國地鐵', '180m/s', '1000人/箱', '電', 13) line13.run() mb = Mobike('摩拜單車','10m/s','1人/車','人工動力',1) mb.a()