专栏名称: 观语小白
目录
相关文章推荐
社会学研究杂志  ·  贺新年 | 《社会学研究》致谢2024年外审专家 ·  昨天  
科研大匠  ·  最受科研人员喜爱的春联来了! ·  2 天前  
科研大匠  ·  国家杰青,全职加盟“双一流”大学 ·  3 天前  
51好读  ›  专栏  ›  观语小白

我的Python学习之路7

观语小白  · 简书  ·  · 2020-03-16 22:18

正文

继承

  • 有一个类,能够实现我们需要的大部分功能,但是不能实现全部功能

如何能让这个类来实现全部的功能呢?

  1. 直接修改这个类,在这个类中添加我们需要的功能
    修改起来会比较麻烦,并且会违反OCP原则

  2. 直接创建一个新的类
    创建一个新的类比较麻烦,并且需要大量的进行复制粘贴,会出现大量的重复性代码

  3. 直接从父类中来继承它的属性和方法
    继承是面向对象三大特性之一
    通过继承我们可以使一个类获取到其他类中的属性和方法
    在定义类时,可以在类名后的括号中指定当前类的父类(超类、基类、super)
    子类(衍生类)可以直接继承父类中的所有的属性和方法

  • 通过继承可以直接让子类获取到父类的方法或属性,避免编写重复性的代码,并且也符合OCP原则
  • 所以我们经常需要通过继承来对一个类进行扩展
  • 在创建类时,如果省略了父类,则默认父类为object
  • object 是所有类的父类,所有类都继承自object

isinstance() 用来检查一个对象是否是一个类的实例
如果这个类是这个对象的父类,也会返回True
所有的对象都是 object 的实例