定义
对象(普通)方法:定义在类里面,第一个参数是self的方法
静态方法:定义在类里面,用装饰器@staticmethod装饰的方法
类方法:定义在类里面,用装饰器@classmethod装饰的方法
class Test(object):
school = "ws"
# 初始化方法
def __init__(self, name):
self.name = name
# 普通方法
def info(self):
print("学生的姓名是:%s" % self.name)
# 类方法
@classmethod
def get_info(cls):
print(cls.school)
# 静态方法
@staticmethod
def test():
print("我是静态方法")
使用场景
对象方法:如果该方法需要使用对象的属性、则定义为对象方法
类方法:如果该方法需要使用类的属性,则定义为类的属性
静态方法:如果该方法即不需要使用对象的属性,也不需要使用的类方法,则可以用静态方法
方法调用
类可以调用静态方法和类方法
对象方法可以调用静态方法、类方法和对象方法
静态方法可以调用类方法、其它静态方法