class Base(object):

    def func(self):
print('Base.func') class Foo(Base): def func(self):
# 方式一:根据mro的顺序执行方法
# super(Foo,self).func()
# 方式二:主动执行Base类的方法
# Base.func(self) print('Foo.func') obj = Foo()
obj.func()

上述代码单继承,子类中没有func方法会去父类中找。

class Base(object):

    def func(self):
super(Base, self).func()
print('Base.func') class Bar(object):
def func(self):
print('Bar.func') class Foo(Base,Bar):
pass # 示例一
# obj = Foo()
# obj.func()
# print(Foo.__mro__) # 示例二
# obj = Base()
# obj.func()

上述代码,示例一Foo中没有func方法,super()会按照继承顺序,先去Base中找,Base中没有再去Bar中找,所以执行结果为所以super是按照

__mro__继承顺序执行的。

Foo.__mro__的结果为:

如果是示例二,则会报错,应为他的父类中没有相关方法。

最新文章

  1. MySQL慢查询日志总结
  2. [1]IP地址查询
  3. SSH项目(struts+spring+hibernate)搭建_代码简化
  4. nios II--实验6——串口软件部分
  5. stm32中断优先级
  6. JavaScript基础知识(一)
  7. IOS学习5——属性与成员变量
  8. Python机器学习:5.6 使用核PCA进行非线性映射
  9. 选项卡js版封装
  10. CSS Sprites(基本写法,怎样使用)
  11. BZOJ2406矩阵——有上下界的可行流+二分答案
  12. Python自学:第三章 倒着打印列表
  13. 201621123075 week5 继承、多态、抽象类和接口
  14. PHP7 学习笔记(九)phpsize动态编译openssl扩展 (微信公众平台)
  15. Git同时使用不同平台代码仓库
  16. 分布式计算(一)Ubuntu搭建Hadoop分布式集群
  17. FastDFS部署安装全过程
  18. Visual GC(监控垃圾回收器)
  19. 记录下返回list给前端 遇到 $ref":"$.data.*** 问题
  20. Linux下的终端快捷键

热门文章

  1. golang context学习记录2
  2. 【flask】环境配置-python-dotenv的使用
  3. KVM + LinuxBridge 的网络虚拟化解决方案实践
  4. delphi TDbGrid 右键 PopupMenu 菜单只在有数据的地方弹出
  5. 【ABAP系列】SAP ABAP7.40新语法简介第一篇
  6. session 的理解
  7. HttpServletResponse ServletResponse 返回响应 设置响应头设置响应正文体 重定向 常用方法 如何重定向 响应编码 响应乱码
  8. 浅谈React工作原理
  9. Java集合简单解析
  10. [BJWC2008] Gate Of Babylon