第十六节:类的属性和方法

第十六节:类的属性和方法

不过尔尔 5 2021-07-15


实例属性和方法

  • 实例属性 实例属性是与类的实例关联的变量,用于存储特定实例的数据。

  • 实例方法 实例方法是与类的实例关联的函数,用于执行特定实例的操作。

实例属性

与类属性不同,实例属性是与类的每个实例相关联的属性。每个实例可以拥有不同的实例属性值。实例属性通常在类的构造函数 __init__ 中初始化,并通过实例来访问。以下是一个示例:

 class Person:
     def __init__(self, name, age):
         # 实例属性
         self.name = name
         self.age = age
 ​
 # 创建Person类的两个实例
 person1 = Person("Alice", 30)
 person2 = Person("Bob", 25)
 ​
 # 访问实例属性
 print(person1.name)  # 输出: "Alice"
 print(person2.age)   # 输出: 25

实例方法

实例方法是与类的实例关联的函数,它们可以访问实例属性并执行与实例相关的操作。在类中定义实例方法时,通常将 self 参数作为第一个参数,以表示对当前实例的引用。以下是一个示例:

 class Circle:
     def __init__(self, radius):
         self.radius = radius
 ​
     # 实例方法
     def area(self):
         return 3.14 * self.radius**2
 ​
 # 创建Circle类的实例
 circle = Circle(5)
 ​
 # 调用实例方法
 print(circle.area())  # 输出: 78.5

类的属性和方法

  • 类的属性(成员变量)存储对象的状态信息,可以通过点号访问。每个对象都有自己的属性副本。

  • 类的方法(成员函数)定义对象的行为,操作属性和执行任务。方法可以接受参数,并在方法内部使用。

类的属性

类的属性是与类本身关联的数据。这些属性可以在整个类的实例之间共享。在Python中,你可以在类的内部定义属性,并且可以通过类的实例来访问和修改这些属性。以下是定义和使用类属性的示例:

 class Car:
     wheels = 4 # 类属性
 ​
     def __init__(self, make, model):
         self.make = make
         self.model = model
 ​
 # 创建Car类的实例
 my_car = Car("Toyota", "Camry")
 ​
 # 访问类属性
 print(my_car.wheels)  # 输出: 4
 ​
 # 修改类属性
 Car.wheels = 6
 print(my_car.wheels)  # 输出: 6 (因为类属性是共享的)

类的方法

类的方法是与类关联的函数,它们可以在类的实例上调用。类方法通常用于执行与类相关的操作,并且可以访问类属性和实例属性。以下是一个定义和使用类方法的示例:

 class Dog:
     def __init__(self, name):
         self.name = name
 ​
     # 类方法
     @classmethod
     def make_sound(cls):
         return f"{cls.__name__} says Woof!"
 ​
 # 创建Dog类的实例
 dog = Dog("Buddy")
 ​
 # 调用类方法
 print(dog.make_sound())  # 输出: "Dog says Woof!"