class MyClass:
def __init__(self, value):
self.value = value
# 实例方法
def instance_method(self):
return f'调用了实例方法,实例属性的值为: {self.value}'
# 静态方法
@staticmethod
def static_method():
return '调用了静态方法,这个方法不访问实例属性。'
# 创建类的实例
obj = MyClass(10)
# 调用实例方法
print(obj.instance_method())
# 调用静态方法
print(MyClass.static_method()) # 通过类名调用
print(obj.static_method()) # 通过实例调用,但它仍然是静态方法
在Python中,实例方法(instance method)需要通过类的实例来调用,因为它们的第一个参数通常是self,代表类的一个实例。这意味着实例方法可以访问和修改实例的状态。而静态方法(static method)则不接收self参数,它们既可以通过类名直接调用,也可以通过类的实例来调用,但它们无法访问或修改类的状态。