Python 实例、类方法和静态方法

python

# 先编写一个类包含实例、类方法和静态方法
class MyClass:

def method(self):

return 'name', self

@classmethod

def classmethod(cls):

return 'class name', cls

@staticmethod

def staticmethod():

return 'static name'

1、实例方法、类方法和静态方法比较

实例方法:不需要任何装饰器,第一个参数self,代表类的实例

(1)  变量使用范围:可以直接使用,类里面任何的任何变量比如self.url、is_running

(2) 是否可以调用其他方法: 可以调用静态方法

(3) 是否需要实例化: 是

(4)调用方式:实例化Myclass().method() ,或者调用函数内部 self.xxx

类方法:需要classmethod装饰。第一参数cls,代表类本身,相当于类名

(1) 变量使用范围:不可以直接使用实例变量,比如self.url

(2) 是否可以调用其他方法: 可以调用静态方法。也可以调用实例方法

(3) 是否需要实例化: 否

(4)调用方式:类.方法名 和 实例化调用 。

静态方法:需要staticmethod装饰。完全独立于类

(1) 变量使用范围:不能使用类中任何变量。

(2) 是否可以调用其他方法: 不可以调用类方法。也不能调用实例方法。但是可以调用类中其他静态方法

(3) 是否需要实例化: 否

(4)调用方式:类.方法名 和 实例化调用 。

以上是 Python 实例、类方法和静态方法 的全部内容, 来源链接: utcz.com/z/389235.html

回到顶部