目录
Python基础文章系列
Python 基础 (一)Python基本认识与环境搭建 | Python 基础 (一)Python基本认识与环境搭建 |
---|---|
Python 基础 (二)Python变量与基本数据类型 | Python 基础 (二)Python变量与基本数据类型 |
Python 基础 (三)Python基本语句与基本运算 | Python 基础 (三)Python基本语句与基本运算 |
Python 基础 (四)Python函数 | Python 基础 (四)Python函数 |
Python 基础 (五)Python包与模块 | Python 基础 (五)Python包与模块 |
Python 基础 (六)Python的文件模块 | Python 基础 (六)Python的文件模块 |
Python 基础 (七)Python的异常处理机制 | Python 基础 (七)Python的异常处理机制 |
Python 基础 (八)Python的类与对象 | Python 基础 (八)Python的类与对象 |
Python 基础 (九)Python的内置模块 | Python 基础 (九)Python的内置模块 |
Python 基础 (十)Python实现简单的图书管理系统 | Python 基础 (十)Python实现简单的图书管理系统 |
4.8 类与对象
4.8.1 面向对象
Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的。
- **类(Class): **用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。
- **方法:**类中定义的函数。
- **类变量:**类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。
- **数据成员:**类变量或者实例变量用于处理类及其实例对象的相关的数据。
- **方法重写:**如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),也称为方法的重写。
- **局部变量:**定义在方法中的变量,只作用于当前实例的类。
- **实例变量:**在类的声明中,属性是用变量来表示的,这种变量就称为实例变量,实例变量就是一个用 self 修饰的变量。
- **继承:**即一个派生类(derived class)继承基类(base class)的字段和方法。继承也允许把一个派生类的对象作为一个基类对象对待。例如,有这样一个设计:一个Dog类型的对象派生自Animal类,这是模拟"是一个(is-a)"关系(例图,Dog是一个Animal)。
- **实例化:**创建一个类的实例,类的具体对象。
- **对象:**通过类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方法。
4.8.2 类定义
类(Class)是面向对象编程中的重要概念,它用于定义对象的模板,描述了对象的属性和方法。在Python中,类的定义通常遵循以下结构:
class ClassName:
# 类的属性
class_variable = value
# 构造函数,初始化对象的属性
def __init__(self, parameter1, parameter2, ...):
self.instance_variable1 = parameter1
self.instance_variable2 = parameter2
# 更多初始化操作
# 类的方法
def method1(self, arg1, arg2, ...):
# 方法的实现
# 可以访问实例变量和类变量
# 可以执行各种操作
def method2(self, arg1, arg2, ...):
# 另一个方法的实现
# 可以访问实例变量和类变量
# 可以执行不同的操作
让我解释一下上述代码的各个部分:
class ClassName:
:这是类的定义语句,用于创建一个名为ClassName
的类。class_variable = value
:这是类变量(或静态变量),它在类的所有实例之间共享。您可以在类中定义各种属性,它们对于该类的所有对象都是相同的。def __init__(self, parameter1, parameter2, ...):
:这是构造函数,用于初始化对象的属性。构造函数会在创建对象时自动调用,通常用于将传递给类的参数分配给对象的实例变量。self.instance_variable1 = parameter1
:在构造函数中,使用self
来引用对象本身,然后将参数值分配给对象的实例变量。这些实例变量将在整个对象的生命周期内存储数据。def method1(self, arg1, arg2, ...):
:这是类的方法,用于定义对象可以执行的操作。方法通常以self
作为第一个参数,以便可以访问实例变量和其他方法。方法可以执行各种操作,包括修改实例变量、调用其他方法等。
通过定义类和类的方法,您可以创建类的实例并使用它们来执行特定的任务。例如:
# 创建类的实例
obj = ClassName(parameter1_value, parameter2_value)
# 调用对象的方法
obj.method1(arg1_value, arg2_value)
obj.method2(arg1_value, arg2_value)
# ---encoding:utf-8---
# @Time : 2023/9/3 13:30
# @Author : Darwin_Bossen
# @Email :3139066125@qq.com
# @Site : 类定义
# @File : Person.py
# 类的定义格式:
class Person: