装饰器:@staticmethod

装饰器

静态方法@staticmethod

普通类调用方法,先要实例化一个对象,@staticmethod的使用,可以在不实例化对象的情况下调用类中的方法。

使用方法:

直接类名.方法名()
@staticmethod不需要表示自身对象的self和自身类的cls参数,就跟使用函数一样

# 封装
class A(obeject):
	@staticmethod  # 静态方法
    def foo():  # 当一个函数,既不用到实例对象的属性,又不用到类对象的属性时,可以使用静态方法
        print('good')
        # 不需要操作类对象,所以不要cls参数;也不需要操作实例对象,所以也不需要self参数
        # 可以操作实例属性或者类属性,但是最好不要这么做
        # print(p.name)
        # print(Person.type)
# 调用
A.foo()

使用@staticmethod有利于组织代码,把某些应该属于某个类的函数给放到那个类里去,同时有利于命名空间的整洁。


版权声明:本文为weixin_46020624原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。