参考资料
静态方法和类成员方法分别在创建时被装入StaticMethod类型和Classmethod类型的对象中;静态方法的定义没有self参数,且能够被类本身直接调用;类方法在定义时需要名为cls的类似于self的参数,类成员方法可以被类的实例调用,而cls参数是自动被绑定到类的。
简单示例:
>>> Something.smethod()
smethod
>>> Something.cmethod()
<class '__main__.Something'>
上述,采用的是手动封装和替换的方法;
Python2.4以后,可以使用装饰器(decorators)的新语法:
>>> Something.smethod()
smethod
>>> Something.cmethod()
<class '__main__.Something'>
静态方法和类成员方法在Python中并不是向来都很重要,主要的原因是大部分情况下可以使用函数或者绑定方法代替;
Python静态方法与类方法详解
本文详细介绍了Python中静态方法和类方法的区别与用法。静态方法在创建时被装入StaticMethod对象中,无需self参数即可由类直接调用;类方法则通过cls参数绑定到类,可通过类实例调用。文章还提供了示例代码,展示了如何使用装饰器定义这两种方法。
800

被折叠的 条评论
为什么被折叠?



