python 实例方法 类方法 静态方法

实例方法

  • 第一个参数是实例对象(self),传递实例的属性和方法
  • 只能被实例对象调用

类方法

  • 装饰器:@classmethod
  • 第一个参数当前类对象(cls), 传递类(不是实例)的属性和方法
  • 可以被实例对象与类对象调用

静态方法

  • 装饰器:@staticmethod
  • 参数随意 (不能使用类或者实例中的属性和方法)
  • 可以被实例对象和类对象调用

对比

方法 实例方法 类方法 静态方法
修饰 @classmethod @staticmethod
第一个参数 self cls
被调用 实例对象 实例对象与类对象 实例对象与类对象
使用场景 正常 直接对类修改 与类没有联系的

你可能感兴趣的:(python基础)