python

超轻量级php框架startmvc

Python 继承,重写,super()调用父类方法操作示例

更新时间:2020-08-01 23:18:01 作者:startmvc
本文实例讲述了Python继承,重写,super()调用父类方法操作。分享给大家供大家参考,具体

本文实例讲述了Python 继承,重写,super()调用父类方法操作。分享给大家供大家参考,具体如下:

demo.py(继承,重写,super):


# 父类
class Dog:
 def bark(self):
 print("汪汪叫")
# 子类 继承
class XiaoTianQuan(Dog):
 def fly(self):
 print("我会飞")
 # 可以重写父类中的同名方法
 def bark(self):
 # super().父类方法名 调用父类中的方法 (第一种方式)(推荐)
 super().bark()
 # 父类名.方法(self) 调用父类中的方法 (第二种方式,python2.x)(不推荐,父类名修改后,此处也得改)
 Dog.bark(self)
 # 注意:如果使用子类名调用方法,可能会出现递归调用 -- 死循环!
 # XiaoTianQuan.bark(self) # 会产生死循环
 # 针对子类特有的需求,进行扩展
 print("神一样的叫唤...")
xtq = XiaoTianQuan()
xtq.bark()

运行结果:

汪汪叫 汪汪叫 神一样的叫唤...