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

yipeiwu_com7年前Python基础

本文实例讲述了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()

运行结果:

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

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

python实现自动化报表功能(Oracle/plsql/Excel/多线程)

python实现自动化报表功能(Oracle/plsql/Excel/多线程)

日常会有很多固定报表需要手动更新,本文将利用python实现多线程运行oracle代码,并利用xlwings包和numpy包将结果写入到指定excel模版(不改变模版内容),并自动生成带...

kafka监控获取指定topic的消息总量示例

我就废话不多说了,直接 上代码吧! import kafka.api.PartitionOffsetRequestInfo; import kafka.common.TopicAnd...

python实现ID3决策树算法

决策树之ID3算法及其Python实现,具体内容如下 主要内容 决策树背景知识 决策树一般构建过程 ID3算法分裂属性的选择 ID3算法流程及其优缺点分析 ID3算法Python代码...

深入解析Python设计模式编程中建造者模式的使用

深入解析Python设计模式编程中建造者模式的使用

建造者模式:将一个复杂对象的构建与他的表示分离,使得同样的构建过程可以创建不同的表示。 基本思想 某类产品的构建由很多复杂组件组成; 这些组件中的某些细节不同,构建出的产品表象会略有不同...

Python中的with...as用法介绍

这个语法是用来代替传统的try...finally语法的。 复制代码 代码如下: with EXPRESSION [ as VARIABLE] WITH-BLOCK 基本思想是wi...