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

yipeiwu_com6年前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程序设计有所帮助。

相关文章

对Pytorch神经网络初始化kaiming分布详解

对Pytorch神经网络初始化kaiming分布详解

函数的增益值 torch.nn.init.calculate_gain(nonlinearity, param=None) 提供了对非线性函数增益值的计算。 增益值gain是一个...

使用Python读写及压缩和解压缩文件的示例

读写文件 首先看一个例子: f = open('thefile.txt','w') #以写方式打开, try: f.write('wokao') finally: f.c...

python2.7 json 转换日期的处理的示例

python2.7中 集成了json的处理(simplejson),但在实际应用中,从mysql查询出来的数据,通常有日期格式,这时候,会报一个错: TypeError: datetim...

对django xadmin自定义菜单的实例详解

1、 自定义菜单 adminx.py class GlobalSetting(object): site_title = u'xxx后台' def kuF_site_menu...

Python操作配置文件ini的三种方法讲解

python 操作配置文件ini的三种方法 方法一:crudini 命令 说明 crudini命令是Linux下的一个操作配置文件的命令工具 用法 crudini --set [--...