Python面向对象程序设计之类和对象
1. 类和对象的概念
1.1 类的定义
在Python中,类是一种抽象数据类型,用于定义对象的属性和方法。类的定义使用关键字class,后跟类名和冒号:
class ClassName:
# 类体
类体由类的属性和方法组成。属性表示对象的特征,方法表示对象的行为。
1.2 对象的创建
类是对象的模板,我们可以根据类来创建多个对象。对象是类的实例,它具有类定义的属性和方法。
要创建一个对象,可以使用类名后跟括号的形式:
object_name = ClassName()
2. 实例变量和类变量
2.1 实例变量
实例变量是属于类的实例的特定数据。每个对象都有自己的副本,它们可以在对象的任何方法中使用。
要定义实例变量,可以在类的方法中使用self关键字:
class ClassName:
def __init__(self):
self.variable_name = value
在上面的代码中,我们使用了特殊的方法__init__来初始化实例变量。使用self.variable_name来定义实例变量。
2.2 类变量
类变量是属于整个类的变量,它的值在所有的对象之间共享。
要定义类变量,可以直接在类中定义:
class ClassName:
class_variable = value
类变量可以通过类名和对象名进行访问:
print(ClassName.class_variable)
object_name.class_variable
3. 示例代码
class Circle: # 定义了一个类Circle
PI = 3.14159 # 类变量,用来表示圆的π值
def __init__(self, radius): # 定义了一个初始化方法,用来初始化圆的半径
self.radius = radius # 实例变量,每个对象都有自己的半径
def area(self): # 定义了一个计算面积的方法
return self.PI * (self.radius ** 2)
# self.PI访问类变量,self.radius访问实例变量
def circumference(self): # 定义了一个计算周长的方法
return 2 * self.PI * self.radius
# 创建了一个Circle对象
circle = Circle(5)
# 访问对象的实例变量
print(circle.radius) # 输出:5
# 调用对象的方法
print(circle.area()) # 输出:78.53975
4. 总结
类是一种抽象数据类型,用于定义对象的属性和方法。对象是类的实例,它具有类定义的属性和方法。
实例变量是属于类实例的特定数据,每个对象都有自己的副本。类变量是属于整个类的变量,它的值在所有的对象之间共享。
通过使用类和对象,我们可以更好地组织和管理代码,提高代码的可重用性和扩展性。