面向对象-类方法和静态方法

需要实例化,是普通方法;不需要类实例化,但是会用到类,用类方法;如果跟类完全没关系,就用静态方法。

 

类方法

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()

 

posted @ 2018-09-27 14:16  rivendare  阅读(210)  评论(0编辑  收藏  举报