面向对象

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

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

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

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

 

继承

class 父类:

  def 父类中的方法(self):

    # do something

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

  pass

 

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

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

python类可以继承多个类

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

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

 

什么是继承?

只执行本类的方法

只执行父类的方法

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

继承:深度优先和广度优先

 

 

什么是单继承?

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

 

什么是多继承?

新式类: 广度优先

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

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

继承:深度优先和广度优先

 

经典类: 深度优先

 

什么是经典类?

不继承object的类都是经典类

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

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

 

什么是新式类?

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

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

 

相关文章:

  • 2021-08-26
  • 2021-03-31
  • 2021-06-08
  • 2022-02-24
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-09-08
  • 2021-07-11
  • 2021-05-23
  • 2021-11-21
相关资源
相似解决方案