实例方法:
即普通方法,默认有self参数,且只能被对象调用;
静态方法:
用 @staticmethod装饰的不带self参数的方法,可以没有参数,可以直接使用类名调用;
类方法:
默认有cls参数,可以被类和对象调用,需要加上 @classmethod装饰器;
实例方法只可以被对象调用,所有三个方法可以被实例和类调用。
class Classname:
@staticmethod
def fun():
print('静态方法')
@classmethod
def a(cls):
print('类方法')
# 普通方法
def b(self):
print('普通方法')
Classname.fun()
Classname.a()
C = Classname()
C.fun()
C.a()
C.b()