美文网首页
【高级特性】46、面向对象:类的继承

【高级特性】46、面向对象:类的继承

作者: 看远方的星 | 来源:发表于2021-05-29 16:11 被阅读0次

目录
一、类的继承机制
二、子类与父类
三、关于self

一、类的继承机制

  • 继承(inheritance)
    如果一个类别A继承自另一个类别B,就把继承者A称为子类,被继承的类B称为父类、基类或超类
  • 代码复用
    利用继承可以从已有类中衍生出新的类,添加或修改部分功能
    新类具有旧类中的各种属性和方法,而不需要进行任何复制


    image.png
    image.png
    image.png
    image.png

二、子类与父类

  • 定义
    如果两个类具有“一般-特殊”的逻辑关系,那么特殊类就可以作为一般类的“子类”来定义,从“父类”继承属性和方法

class <子类名>(<父类名>):
def <重定义方法>(self,…):

  • 覆盖(Override)
    子类对象可以调用父类方法,除非这个方法在子类中重新定义了
    如果子类同名方法覆盖了父类的方法,仍然还可以调用父类的方法
  • 子类还可以添加父类中没有的方法和属性


    image.png

三、关于self

  • 在类定义中,所有方法的首个参数一般都是self

  • self的作用
    在类内部,实例化过程中传入的所有数据都赋给这个变量

  • self实际上代表对象实例
    <对象>.<方法>(<参数>)
    等价于:
    <类>.<方法>(<对象>,<参数>)
    这里的对象就是self

  • 如下图line81和82


    image.png

相关文章

  • 【高级特性】46、面向对象:类的继承

    目录一、类的继承机制二、子类与父类三、关于self 一、类的继承机制 继承(inheritance)如果一个类别A...

  • 面对对象高级编程

    面向对象高级编程: 面向对象编程:封装、继承和多态 面向对象高级编程:多重继承、定制类和元类

  • Objective-C初始化方法

    一、继承 面向对象的三大特性:封装,继承,多态。⾯向对象提供了继承特性。继承既能保证类的完整,又能简化代码。面向对...

  • GeekBand-OC继承与多态

    面向对象三大特性:封装、继承、多态面向对象三大特性 继承 在OC中,继承为单继承。即每个类只能有一个父类,子类自动...

  • Python面向对象编程(下)

    数据封装、继承和多态是面向对象程序设计中最基础的3个概念,今天学习下Python中的高级特性——多重继承、定制类、...

  • JavaSE基础

    面向对象都有哪些特性以及你对这些特性的理解 一.继承:继承是从已有类得到继承信息创建新类的过程。提供继承信息的类被...

  • Lua单继承与多继承理解

    Lua不具有面向对象、继承等高级语言的属性,但是借助万能的table,仍然可以模拟实现面向对象继承的特性。这里先要...

  • Java SE基础面试题

    1、面向对象都有哪些特性以及你对这些特性的理解 1)继承:继承是从已有类得到继承信息创建新类的过程。提供继承信息的...

  • 设计模式(1)——面向对象

    一、面向对象 1.1面向对象三大特性:封装、继承、多态 继承 People是父类,公共的,不仅仅服务于studen...

  • Objective-C day2初始化方法 (17-7-27)

    继承 面向对象三大特性:封装 继承 多态。 继承的特点:没有父类的类称为根类,OC中的根类是NSObject(祖宗...

网友评论

      本文标题:【高级特性】46、面向对象:类的继承

      本文链接:https://www.haomeiwen.com/subject/fboysltx.html