zoukankan      html  css  js  c++  java
  • 继承:深度优先和广度优先

    面向对象

    封装: 其实就是使用构造方法将内容封装到对象中,然后通过对象直接或者self间接获取被继承的内容

    继承: 对于面向对象的继承来说,其实就是将多个类共有的方法提取到父类中,子类仅需继承父类而不必去实现每个方法

    (除了子类和父类,你可能看到过派生类和基类,他们与子类和父类只是叫法不同而已)

    多态:(鸭子类型): 一个接口的多种实现方式

    继承

    class 父类:

      def 父类中的方法(self):

        # do something

    class 子类(父类): #子类继承父类,既拥有了父类中所有方法

      pass

    zi = 子类()    # 创建子类对象

    zi.父类中的方法()    # 执行从父类中继承的方法

    python类可以继承多个类

    python的类如果继承了多个类,那么其寻找方式有两种,分别是,深度优先和广度优先

    当类是新式类时,多继承情况下,会按照广度优先方式查找

    什么是继承?

    只执行本类的方法

    只执行父类的方法

    即执行本类又执行父类的方法

    什么是单继承?

    新式类,经典累查询顺序一样

    什么是多继承?

    新式类: 广度优先

      广度优先: 米格节点有且只走一次

      查找方法:    mro()  只适合新式类

    经典类: 深度优先

    什么是经典类?

    不继承object的类都是经典类

    python2x所有的类  默认  都不继承object类,所有的类默认都是经典类

    python2x:(既有新式类,又有经典类) 你可以让他继承object类

    什么是新式类?

    凡是继承object的类都是新式类

      python3x版本中,所有的类都是新式类,因为python3x中的类都默认继承object

  • 相关阅读:
    EELS
    企业管理软件随想透视>包容,无形思想>有形方便
    定风波
    企业管理软件随想也谈企业框架软件需求
    Delphi数据库开发-前言
    游戏引发的……
    js 当前时间
    代码片段
    阶段总结
    Web界面设计
  • 原文地址:https://www.cnblogs.com/ALADL/p/9368011.html
Copyright © 2011-2022 走看看