zoukankan      html  css  js  c++  java
  • python中self和cls @classmethod修饰符

    class A(object):

    # 属性默认为类属性(可以给直接被类本身调用)
    num = "类属性"

    # 实例化方法(必须实例化类之后才能被调用)
    def func1(self): # self : 就是A这个大类
    print("func1")
    print(self)

    # 类方法(不需要实例化类就可以被类本身调用)
    @classmethod
    def func2(cls): # cls : 表示没用被实例化的类本身(调用自身未实例化类)
    print("func2")
    print(cls)
    print(cls.num)
    cls().func1()

    # 不传递传递默认self参数的方法(该方法也是可以直接被类调用的,但是这样做不标准)
    def func3():
    print("func3")
    print(A.num) # 属性是可以直接用类本身调用的

    # A.func1() 这样调用是会报错:因为func1()调用时需要默认传递实例化类后的地址id参数,如果不实例化类是无法调用的
    A.func2()
    A.func3()

  • 相关阅读:
    jstat命令-帮助优化java性能
    使用nginx搭建简单文件服务器
    JVM初探
    fastDFS shiro权限校验 redis FreeMark页面静态化
    spring AOP
    Java多线程并发
    js插件之Ocupload
    Jquery总结
    shell
    Linux(二)
  • 原文地址:https://www.cnblogs.com/Thelightone/p/13039659.html
Copyright © 2011-2022 走看看