分类目录:《系统学习Python》总目录
我们可以在类中定义两种方法,它们不需要一个实例就可以被调用:静态方法(staticmethod)大致与一个类中简单的无实例函数的工作方式类似,而类方法则被传人一个类而不是一个实例。两者都在其他编程语言中有相似的工具(如:C++中的静态方法)。尽管这一功能与前面的文章所介绍的新式类被一起添加,静态方法(staticmethod)和类方法(classmethod)也对经典类也是有效的。要使用这些方法,必须在类中调用特殊的内置函数,分别名为staticmethod
和classmethod
,或者使用《系统学习Python——装饰器》系列文章中的@name
装饰语法来使用。这两个函数对于在Python2.X中开启这些模式是必要的,而且在Python3.X中通常也是需要的。在Python3.X中,无实例的方法只通过一个类名调用,而不需要一个staticmethod
声明,不过如果希望通过实例来调用这些方法的话则还是需要这个staticmethod
声明的。
参考文献:
[1] Mark Lutz. Python学习手册[M]. 机械工业出版社, 2018.