python继承关系之super函数

来源:互联网 发布:网络用语dw什么意思 编辑:程序博客网 时间:2024/05/17 22:08

super_example.py

class A:def __init__(self):print("Enter A")print("Leave A")class B(A):def __init__(self):print("Enter B")super(B,self).__init__()print("Leave B")class C(A):def __init__(self):print("Enter C")super(C,self).__init__()print("Leave C")class D(A):def __init__(self):print("Enter D")super(D,self).__init__()print("Leave D")class E(B,C,D):def __init__(self):print("Enter E")super(E,self).__init__()print("Leave E")



test.py:

from super_example import *info = E()


然后终端输入 python3 test.py即可

结果:

Enter E
Enter B
Enter C
Enter D
Enter A
Leave A
Leave D
Leave C
Leave B
Leave E

总结:

super的特点类似于BFS,继承的上一层遍历完后,再向上一层继承关系遍历,全部遍历完后,递归返回

,所以出现了上述输出结果,可以看到前后是对称的,与递归调用的特点极其类似.



原创粉丝点击