Python 面向对象编程(OOP)是一种以对象为中心的编程范式,它将现实世界中的事物抽象为“类”和“对象”,并通过封装、继承和多态等特性来组织代码。Python 从设计之初就支持面向对象编程,使得创建类和对象变得非常简单。
1. 类(Class)与对象(Object)
类 是具有相同属性和方法的一组对象的模板或抽象定义。例如,“学生”可以是一个类,它包含姓名、年龄等属性,以及学习、吃饭等方法。
对象 是类的具体实例。比如,“张三”是“学生”这个类的一个具体对象。
2. 封装(Encapsulation)
封装 是指将数据(属性)和操作数据的方法绑定在一起,并隐藏对象的内部细节,只通过公共接口与外界交互。这有助于提高代码的安全性和可维护性。
3. 继承(Inheritance)
继承 允许一个类(子类)获得另一个类(父类)的属性和方法。这样可以实现代码复用,并且子类还可以扩展或重写父类的功能。
4. 多态(Polymorphism)
多态 允许不同类的对象对同一消息做出响应。也就是说,同一个方法调用可以根据对象的不同而表现出不同的行为。
创建类的基本语法
在 Python 中定义一个类使用 class 关键字,创建对象时,只需调用类名并传入参数即可:

面向对象编程让程序结构更清晰、模块化更强,特别适合处理复杂的项目。通过合理使用类和对象,可以让代码更具可读性和扩展性。
类变量和实例变量的区别
类变量:属于类,所有实例共享;定义在类中方法外;通过类名或实例名访问;修改后所有实例获取到的值都会改变。
实例变量:属于实例,每个实例独立;通过 self 在init方法中定义;仅通过实例名访问;修改后仅影响当前实例。
参考如下图

继承的使用案例
student(people)为student类继承people类

也可以使用子类对象调用父类已被覆盖的方法

多态的使用案例

