python中面向对象编程知识梳理

  1. 面向对象编程(Object Oriented Programming,简称 OOP)是一种程序设计思想,是将对象视为程序的组成单元。
  2. 常用术语
名词解释
类(class)用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。
方法类中定义的函数。包含实例方法,类方法,静态方法。
类变量(属性)类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。
数据成员类变量或者实例变量用于处理类及其实例对象的相关的数据。
方法重写如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),也称为方法的重写。
局部变量定义在方法中的变量,只作用于当前实例的类。
实例变量在类的声明中,属性是用变量来表示的,这种变量就称为实例变量,实例变量就是一个用 self 修饰的变量。
继承即一个派生类(derived class)继承基类(base class)的属性和方法。继承也允许把一个派生类的对象作为一个基类对象对待。
实例化创建一个类的实例,类的具体对象。
对象通过类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方法。
  1. 类的命名遵循大驼峰命名法
    • 每个单词的第一个字母都大写,例如爬取 GitHub 网站仓库的类可以起名 GithubRepoSpider
    • 私有类使用一个下划线开头,例如私有用户数据类 _UserData
  2. 特殊方法
特殊方法用途
__init__构造方法,初始化实例
__repr__格式化实例的打印样式
__new__创建实例时执行
__del__析构方法,在删除时会被调用
__slots__限制绑定属性
__call__使实例变成可调用对象
  1. 私有属性是指不希望在类的外部被直接调用的属性。单下划线开头是约定俗成的写法,不是语法规定,例如 _password。以两个下划线 __ 开头的写法例如 __name,是标准的私有属性,类外部不可以直接调用,但也有其他办法调用。
  2. 类的三大特征是 封装继承 和 多态
  3. 封装 就是用类将数据和基于数据的操作封装在一起,隐藏内部数据,对外只提供公共的访问接口。
  4. 继承可以使子类具有父类的属性和方法,也可以重新定义和追加属性和方法。
  5. 多态是指如果父类和子类存在相同的方法,那么子类对象在调用该方法时,实际调用的就是子类的方法。
  6. 多重继承时,从多个父类继承属性时遵循深度优先从左至右的规则。
  7. super() 函数是用于调用父类(超类)的一个方法。
  8. 装饰器 是一种高阶函数,将函数作为高阶函数的参数或返回值。property 装饰器可以使实例的方法作为属性使用。 classmethod 装饰器可以创建类属性和类方法,类方法的第一个参数传入的是类对象,需要使用 clsstaticmethod 装饰器可以在类的内部创建一个静态方法,类和类的实例均可调用它。
  9. 实例方法、类方法、静态方法。区别如下:
分类第一个参数强制为在定义方法时可以引用
实例方法实例对象 self类属性、实例属性、类方法、实例方法
类方法类对象 cls类属性、类方法
静态方法类属性

摘自蓝桥,感谢蓝桥提供的学习平台!

发表回复

后才能评论