Python类方法分三类:实例方法以self为首参、仅实例可调;类方法用@classmethod装饰、以cls为首参、类或实例均可调;静态方法用@staticmethod装饰、无self/cls、纯工具函数。
Python 类中的方法主要分为三类:实例方法、类方法和静态方法。它们在定义方式、调用主体和用途上各有不同,理解区别对合理设计类结构很关键。
最常用的方法类型,第一个参数必须是 self,代表当前实例对象。它能访问和修改实例属性,也能调用其他实例方法或类属性。
用 @classmethod 装饰,第一个参数是 cls,代表当前类本身。适合操作类属性、实现替代构造器或需要影响整个类行为的逻辑。
用 @staticmethod 装饰,不接收 self 或 cls 参数。本质上是“寄居”在类里的普通函数,与类或实例无数据绑定。
不复杂但容易忽略:方法类型由装饰器和参数约定共同决定,Python 不强制检查,写错参数名(如把 cls 写成 self)也不会报错,但运行时行为会异常
。