首页 > 编程 > Python > 正文

python类方法,实例方法,静态方法的区别

2019-11-10 17:52:00
字体:
来源:转载
供稿:网友
class MyClass: def method(self): PRint("method") @staticmethod def staticMethod(): print("static method") @classmethod def classMethod(cls): print("class method") #普通函数 def function(): print("function")

定义区别: 1.类方法和实例方法分别有专门的修饰符 2.实例方法有self参数,类方法有cls参数(类参数),静态方法是不需要这些附加参数的

访问区别: 1. 类和实例都可以访问静态方法和类方法 2. 从理论上来说,类是不能访问实例方法的,但是可以把实例/类作为参数传入,访问如下:

a=Myclass()Myclass.method(a)Myclass.method(Myclass)

3.类可以访问普通函数,实例却不可以。

#正确的Myclass.function()#报错的a.function()
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表