美文网首页
python中的经典类和新式类

python中的经典类和新式类

作者: 临渊如峙 | 来源:发表于2018-03-23 13:54 被阅读0次

    1、定义
    Python 2.x中默认都是经典类,只有显式继承了object才是新式类(Python2.2出现新式类)
    Python 3.x中默认都是新式类,不必显式的继承object

    2、属性和方法
    新式类可以直接通过class属性获取自身类型
    新式类中增加了slots属性,可以对示例扩展的属性加以限制
    新式类中增加了getattribute方法

    3、多继承MRO(方法解释顺序)
    经典类多继承属性搜索顺序: 先深入继承树左侧,再返回,开始找右侧(深度优先算法);
    新式类多继承属性搜索顺序: 先水平搜索,然后再向上移动(广度优先算法)
    以下是图解实例:


    python中的经典类和新式类
    python中的经典类和新式类

    相关文章

      网友评论

          本文标题:python中的经典类和新式类

          本文链接:https://www.haomeiwen.com/subject/pxoaqftx.html