python 面向对象:类方法&静态方法

一、类方法

1.1 概念及语法说明

 类方法就是针对类对象定义的方法。在类方法内部可以直接访问类属性或者调用其他的类方法

语法如下:

@classmethod        
def 类方法名(cls):    
    pass

说明:

类方法需要修饰器 @classmethod 来标识,告诉解释器这是一个类方法。

类方法第一个参数应是cls(class的缩写),参数也可以使用其他名称,不过习惯使用cls,作用与self类似,

在方法内部可以使用  cls.  访问类的属性以及其他的类方法。

1.2 代码演示

class Tool(object):

    count = 0

    @classmethod
    def show_count(cls):
        print(F"工具对象的数量:{cls.count}")

    def __init__(self, name):
        self.name = name
        # 通过 类名.类属性 的方式访问类属性;
        # 也可以通过 对象.类属性 的方式访问,但是一般不建议这么做。因为如果调用前使用了赋值语句结果会变更
        Tool.count += 1


# 创建工具对象
tool1 = Tool("钳子")
tool2 = Tool("扳手")
tool3 = Tool("改刀")

# 调用类方法
Tool.show_count()

猜你喜欢

转载自www.cnblogs.com/testlearn/p/11732944.html