zoukankan      html  css  js  c++  java
  • 面向对象-继承

    面向对象的三大特性:继承,多态,封装

    继承:

      继承是一种创建新类的方式,在Python中,新建的类可以继承一个或多个父类,父类又称为基类或超类,新建的类称为派生类和子类.

      继承的优点:

        1)提高代码的复用性

        2)提高代码的维护性

        3)让类与类发生关系

      组合:让对象与对象之间发生关系

    执行父类或子类的三种方式:

      1.只执行父类的方法:子类中不要定义与父类相同的变量

      2.只执行子类的方法:在子类中创建这个方法

      3.既执行子类的方法又执行父类的方法:又两种方式

        1)父类名.子类名(参数)

        2)super().父类方法名(参数(自传self参数))

      object: python中如果没有指定基类,python的类会默认继承object类,object是所有python类的基类,它提供一些常见方法(如__str__)的实现

    python中类的继承分为:单继承和多继承

    继承类分为:新式类和经典类

    在单继承中:新式类和经典类的查找方式一样

    在多继承中:

      新式类:按照广度优先方式查找,在python3中都是新式类,凡是继承object类都是新式类,所以python3默认继承object类

      经典类:按照深度优先方式查找,没有继承object类的都是经典类,python2版本是经典类,经典类可以转化新式类,在类名后面加个(object)就转换成了新式类

      注意:广度优先和深度优先只是继承两个类的情况

      广度优先:一条路走到倒数第二级,判断,如果其他路能走到终点,则返回走第二条路,如果不能,则直接走到底

      深度优先:一条路走到底,找不到在走其他路

  • 相关阅读:
    【机器学习笔记】EM算法及其应用
    【机器学习笔记】循环神经网络RNN
    【caffe范例详解】
    Caffe on Windows (Visual Studio 2015+CUDA8.0+cuDNNv5)
    【Keras案例学习】 CNN做手写字符分类(mnist_cnn )
    Celery分布式文件队列
    通过nginx+lua或openresty实现web站点的waf功能
    使用docker hub获取kubernetes各个组件的镜像
    使用Ansible快速构建kubernetes1.10.4HA高可用集群
    创建私服maven服务
  • 原文地址:https://www.cnblogs.com/ITdong-1/p/9368668.html
Copyright © 2011-2022 走看看