Python中静态方法和类方法的区别

Python030

Python中静态方法和类方法的区别,第1张

静态方法是调用时跟具体实例没有关联的方法,不需要使用self和cls参数。

类方法是调用的时候,要使用类的相关成员的方法,需要使用cls参数,但不用self参数。

参考:刘江的Python教程

要在类中使用静态方法,需在类成员函数前面加上@staticmethod标记符,以表示下面的成员函数是静态函数。使用静态方法的好处是,不需要定义实例即可使用这个方法。另外,多个实例共享此静态方法。

普通的类方法需要对象实例化之后才能调用 。

两个方法:

1.Python中静态方法的作用就是保证方法里面所使用的属性和值都是静态不变的,使用静态方法一般都不会定义参数,因为静态方法只能够使用静态属性。python内定义静态方法的方式为在定义函数的代码前加上一个@staticmethod这样的标识符。

2.一般的类方法在定义之后需要实例化这个类才能够通过类对象点方法的形式去调用它,但是静态方法可以直接通过类名去调用。因为为静态方法就相当于是一个暴露在外部的自定义函数一样,只需要使用类名找到它就可以使用了。同时静态方法也能够去用实例化之后的类对象对调用。