python的类方法和静态方法

1057次阅读  |  发布于5年以前

本文实例讲述了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++中是没有类方法着个概念的的

复制代码 代码如下:

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

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8