博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
类的继承查询策略:广度优先
阅读量:5135 次
发布时间:2019-06-13

本文共 995 字,大约阅读时间需要 3 分钟。

#类的继承方式:breadth first广度优先的查询策略,继承按照B——C——A的顺序 注意:python2中经典类是按照深度优先来继承的;新式类是按照广度优先继承的      pyhton3则完全按照广度优先来继承的 ex1:
1 class A(object): 2     def __init__(self): 3         print("A") 4 class B(A): 5     def __init__(self): 6         print("B") 7 class C(A): 8     def __init__(self): 9         print("C")10 class D(B,C):11     pass12 obj=D()
View Code

执行结果是打印B

ex2:

1 class A(object): 2     def __init__(self): 3         print("A") 4 class B(A): 5     pass 6     # def __init__(self): 7     #     print("B") 8 class C(A): 9     def __init__(self):10         print("C")11 class D(B,C):12     pass13 obj=D()
View Code

执行结果是打印C

ex3:

1 class A(object): 2     def __init__(self): 3         print("A") 4 class B(A): 5     pass 6     # def __init__(self): 7     #     print("B") 8 class C(A): 9     pass10     # def __init__(self):11     #     print("C")12 class D(B,C):13     pass14 obj=D()
View Code

执行结果是打印A

同理:多继承的方法和这个原理相同,多继承中参数的次序是对子类的继承有影响的

转载于:https://www.cnblogs.com/pythonkids/p/7745775.html

你可能感兴趣的文章
C#基础第八天-作业-设计类-面向对象方式实现两个帐户之间转账
查看>>
洛谷 P3237 [HNOI2014]米特运输
查看>>
Attributes.Add用途与用法
查看>>
JavaScript面向对象初探——封装和继承
查看>>
L2-001 紧急救援 (dijkstra+dfs回溯路径)
查看>>
【概率】poj 2096:Collecting Bugs
查看>>
javascript 无限分类
查看>>
【自制插件】MMD4Maya
查看>>
解决linux服务器乱码
查看>>
mapbox.gl文字标注算法基本介绍
查看>>
【C++】异常简述(二):C++的异常处理机制
查看>>
web.config在哪里
查看>>
SQL Server 2000 版本支持的最大物理内存量
查看>>
spring IOC装配Bean(注解方式)
查看>>
FTP服务器的搭建和使用(centos7)
查看>>
[面试算法题]有序列表删除节点-leetcode学习之旅(4)
查看>>
SpringBoot系列五:SpringBoot错误处理(数据验证、处理错误页、全局异常)
查看>>
MyEclipse搭建SSM框架(Spring+MyBatis+SpringMVC)
查看>>
kubernetes_book
查看>>
Linux下串口通信工具minicom的用法
查看>>