• 面向对象(二)


    一.继承初体验

    父类:

    class ParentClass1:
        pass
    class ParentClass2:
        pass

    子类:

    class SubClass(ParentClass1):
        pass

    继承多个子类:

    class SubClass2(ParentClass1, ParentClass2):
        pass

    查看继承的父类:__bass--,是类的属性,用来查找当前类的父类.

    print(SubClass1.--bases--)

    print(SubClass2.--bases--)

    二.寻找继承关系

    先抽象(举例):

    奥巴马--人类--动物类

    麦兜--猪类-- 动物类

    小丁丁-- 狗类--动物类

    特征:鼻子眼睛;技能吃喝拉撒

    再继承:

    奥巴马对象-- 调用人类-- 继承动物类

    麦兜-- 调用猪类-- 继承动物类

    小丁丁-- 调用狗类-- 继承动物类

    继承关系:

    对象是特征与技能的结合体.

    类是一系列对象相同的特征与技能的结合体.

    继承是一系列类相同的特征与技能的集合体.

    三.继承背景下对象属性查找顺序

    1.对象查找属性会先从对象的名称空间中查找;

    2.若对象没有,则会去类里面找;

    3.若当前类是子类,并且没有对象找的属性,会去父类中查找(若都没有,则报错);

    注意: 对象查找属性,若子类有, 不管父类有没有,以子类的为准.

    四.派生

    派生指的是子类继承父类的属性,并且派生出新的属性.

    子类派生出新的属性,若与父类的属性相同,则以子类的为准.

    继承是谁与谁的关系,指的是类与类的关系,子类与父类是从属关系

    五.子类派生出新的属性,并重复父类的属性

    子类派生出新的属性,若与父类的属性相同,则以子类的为准.

    六.新式类与经典类(了解)

    python2中才会有新式类和经典类之分.

    python3中,所有的类都是新式类.

    新式类: 继承object的类都称之为新式类.python3 中,子类不继承自定义的类,默认继承object.
    经典类: 在python2中,凡是没有继承object的都是经典类.

    mro(): 属于object--> type的函数,用来查看之前的继承顺序,在多继承的情况下.

    我把月亮戳到天上 天就是我的 我把脚踩入地里 地就是我的 我亲吻你 你就是我的
  • 相关阅读:
    苦逼也聊模式--(0)--开篇
    发现无力吐槽
    JS函数调用
    初步使用nodejs(一)
    测试一下
    达摩流浪者
    Revit:二开使用Sqlite保存本地数据,并配合EF6等ORM框架
    Revity:查找并修改类型参数和实例参数
    复习一下UML
    Revit:ElementFilter过滤器基类
  • 原文地址:https://www.cnblogs.com/zhulipeng-1998/p/12863945.html
Copyright © 2020-2023  润新知