C3算法(计算类的,supper()函数

一.经典类的MRO和新式类的MRO c3算法.

二.super()。

一.经典类的MRO和新式类的MRO c3算法.

什么是MRO:解决类中的多继承,重名方法时的查找顺序

如何使用MRO:用类名.__mro__ 获取到类的MRO信息.

MRO中的C3算法是怎么算的(无论是经典类的MRO还是新式类的MRO他们的算法都是深度优先.原因是深度优先的查找速度很快):

 举例说明:

    

 

二.super()。

 

不管super()写在哪儿. 在哪儿执行. 一定先找到MRO列表. 根据MRO列表的顺序往下找. 否则一切都是错

应用场景:

and

posted @ 2018-12-24 17:39  Tank-Li  阅读(377)  评论(0编辑  收藏  举报