zoukankan      html  css  js  c++  java
  • python类方法和静态方法

    python没有和C++中static关键字,它的静态方法是怎样的呢?还有其它语言中少有的类方法又是神马?
    python中实现静态方法和类方法都是依赖于python的修饰器来实现的。
     
    class MyClass: 
     
        def  method(self): 
               print("method") 
     
        @staticmethod 
        def  staticMethod(): 
                print("static method") 
     
         @classmethod 
         def classMethod(cls): 
               print("class method") 
     
     
    大家注意到普通的对象方法、类方法和静态方法的去别了吗?
    对象方法有self参数,类方法有cls参数,静态方法是不需要这些附加参数的。
    在C++中是没有类方法着个概念的的

    -------------------

    coding:utf-8
    class A(object):
        "This ia A Class"

        @staticmethod
        def Foo1():
            print("Call static method foo1()\n")

        @classmethod
        def Foo2(cls):
            print("Call class method foo2()")
            print("cls.__name__ is ",cls.__name__)

    A.Foo1();
    A.Foo2();

    结果是:
    Python code
    Call static method foo1()

    Call class method foo2()
    cls.__name__ is  A


     

  • 相关阅读:
    mycat主要参数
    Linux上通过docker方式安装mysql
    Docker镜像拉取慢的解决方法
    mysql关联、子查询索引优化
    Mysql优化单表查询
    Mysql如何快速插入100万条记录?
    git连接到github
    git分支操作2
    git基本操作1
    git简介及安装(win10)
  • 原文地址:https://www.cnblogs.com/kungfupanda/p/2680566.html
Copyright © 2011-2022 走看看