面向对象-类方法和静态方法
需要实例化,是普通方法;不需要类实例化,但是会用到类,用类方法;如果跟类完全没关系,就用静态方法。
类方法
1.在类定义中,使用@classmethod装饰器修饰的方法
2.必须至少有一个参数,且第一个参数留给了cls,cls指代调用者即类对象自身
3.cls这个标识符可以是任意合法名称,但是为了易读,请不要修改
4.通过cls可以直接操作类属性
示例:
class Person: AGE = 10 @classmethod def class_method(cls): print(cls.AGE) Person.class_method()
静态方法
1.在类定义中,使用@staticmethod装饰器修饰的方式
2.调用时,不会隐式的传入参数,静态方法只是表明这个方法属于这个名词空间,函数跪在一起,方便管理
示例:
class Person: @staticmethod def static_method(): print('hello') Person.static_method()