• python全栈脱产第24天------面向对象编程---继承


    定义:继承是一种新建类的方式,新建的类称之为子类,被继承的类称之为基类、父类、超类

       继承描述的是一种“遗传”的关系:子类可以重用父类的属性

       注意:1.在python中支持一个子类同时继承多个父类

          2.python中类分为两种:新式类:但凡继承object类,以及该类的子类都是新式类,在python3中默认继承object类

                     经典类:没有继承object类,以及子类都是经典类,之后python2中才分新式类与经典类

    用处:减少代码冗余

      调用父类的方法来减少代码冗余:方式一:指名道姓地访问某一个类的函数

                      注意:1.该方式与继承是没有关系的  2.访问某一个类的函数,没有自动传值的效果

                        通过类名.加方法名加参数来调用

                    方式二:只能在子类中使用  python2中:super(自己的类名,对象自己)python3中:super()

                        调用super()会得到一个特殊的对象,该特殊的对象是专门用来引用父类中的属性,完全参照mro表

                          注意:1.该方法与继承严格依赖与继承的mro列表  2.访问是绑定的方法,有自动传值的功能

                        super().方法名加参数

    单继承背景下属性查找的顺序:对象-》对象的类-》父类-》....

    多继承背景下属性查找的顺序:对象-》对象的类-》按照顺序从左到右的顺序一个个的分支的找下去

      出现菱形继承:新式类:广度优先查找,在最后一个分支查找顶级类,有mro方法可以查看mro列表

             经典类:深度优先查找,在第一个分支就查找顶级类

  • 相关阅读:
    终于有了自己的blog了。
    [Asp.Net+C#]Datagrid使用技巧二(怎样让对动态创建的列进行排序)
    [Asp.Net+C#]Datagrid使用技巧一(怎样灵活控制表头)
    CentOS下配置iptables防火墙
    ios中提示信息的实现及自动消失
    ios导航条添加按钮
    NSAutoreleasePool自动释放池
    什么是Tollfree bridging
    Android开发中的drawable(hdpi,mdpi,ldpi)和WVGA,HVGA,QVGA的区别以及联系
    文章逐步迁移过来
  • 原文地址:https://www.cnblogs.com/zhouyi0316/p/9506622.html
Copyright © 2020-2023  润新知