class MethodTest():
defstaticFun():
staticmethod和classmethod的相同点:
1.都可以通过类或实例调用
mt = MethodTest()
MethodTest.staticFun()
mt.staticFun()
MethodTest.classFun()
mt.classFun()
2.都无法访问实例成员
defstaticFun():
print
@classmethod
defclassFun(cls):
staticmethod和classmethod的区别:
1.staticmethod无需参数,classmethod需要类变量作为参数传递(不是类的实例)
2.classmethod可以访问类成员,staticmethod则不可以
本文详细解释了Python中静态方法和类方法的区别,包括它们如何通过类或实例调用,无法访问实例成员,以及静态方法无需参数而类方法需要类变量作为参数的特点。此外,还阐述了类方法可以访问类成员而静态方法不行。
1万+

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



