2019年7月28日 在子类中调用父类的方法 happy birthday
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('%s is running'%self.name) class Subway(Vehicle): def __init__(self,name,speed,load,power,line): # self.name=name # self.speed=speed # self.load=load # self.power=power Vehicle.__init__(self,name,speed,load,power)#子类中调用父类的方法,就是上面那段代码,这里self是需要的,因为是在对象在调用类的方法 self.line=line def show_info(self): print(self.name,self.speed,self.load,self.power,self.line) def run(self): Vehicle.run(self)#注意传递self line13=Subway('bjdt','100km/s',5000,'E','13#') line13.show_info() line13.run()
》》》
bjdt 100km/s 5000 E 13#
bjdt is running
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('%s is running'%self.name) class Subway(Vehicle): def __init__(self,name,speed,load,power,line): # self.name=name # self.speed=speed # self.load=load # self.power=power # Vehicle.__init__(self,name,speed,load,power)#子类中调用父类的方法,就是上面那段代码,这里self是需要的,因为是在对象在调用类的方法 super().__init__(name,speed,load,power) #super方法不用传递self,通过super方法可以直接调用父类方法 self.line=line def show_info(self): print(self.name,self.speed,self.load,self.power,self.line) def run(self): # Vehicle.run(self)#注意传递self super().run() #super方法不用传递self,通过super方法可以直接调用父类方法 line13=Subway('bjdt','100km/s',5000,'E','13#') line13.show_info() line13.run()
>>>
bjdt 100km/s 5000 E 13#
bjdt is running
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
【推荐】AI 的力量,开发者的翅膀:欢迎使用 AI 原生开发工具 TRAE
【推荐】2025 HarmonyOS 鸿蒙创新赛正式启动,百万大奖等你挑战
· 记一次 C# 平台调用中因非托管 union 类型导致的内存访问越界
· [EF Core]聊聊“复合”属性
· 那些被推迟的 C# 14 特性及其背后的故事
· 我最喜欢的 C# 14 新特性
· 程序员究竟要不要写文章
· 我是不是很有钱?
· 遭遇疯狂 cc 攻击的一个周末
· 【EF Core】聊聊“复合”属性
· GPT‑5 重磅发布
· 美丽而脆弱的天体运动:当C#遇见宇宙混沌