PYTHON中的静态方法和类方法
2013-11-09 12:24
274 查看
静态方法
要在类中使用静态方法,需在类成员函数前面加上@staticmethod标记符,以表示下面的成员函数是静态函数。使用静态方法的好处是,不需要定义实例即可使用这个方法。另外,多个实例共享此静态方法。代码如下:
class SimClass(): @staticmethod def ShareStr(): print "This is a static Method"
SimClass.ShareStr() #使用静态函数
类方法
类方法与普通的成员函数和静态函数有不同之处,在接触的语言中好像也没见过这种语义,看它的定义:一个类方法就可以通过类或它的实例来调用的方法, 不管你是用类来调用这个方法还是类实例调用这个方法,该方法的第一个参数总是定义该方法的类对象。
记住:方法的第一个参数都是类对象而不是实例对象.
按照惯例,类方法的第一个形参被命名为 cls. 任何时候定义类方法都不是必须的(类方法能实现的功能都可以通过定义一个普通函数来实现,只要这个函数接受一个类对象做为参数就可以了).
代码如下:
class ABase(object): @classmethod #类方法修饰符 def aclassmet(cls): print 'a class method for', cls.__name__ class ADeriv(ABase): pass bInstance = ABase( ) dInstance = ADeriv( ) ABase.aclassmet( ) # prints: a class method for ABase bInstance.aclassmet( ) # prints: a class method for ABase ADeriv.aclassmet( ) # prints: a class method for ADeriv dInstance.aclassmet( ) # prints: a class method for ADeriv
相关文章推荐
- Python 类方法,静态方法,实例化方法
- Python 类方法、实例方法、静态方法
- Python绑定方法,未绑定方法,类方法,实例方法,静态方法
- Python 实例方法 类方法 静态方法 (instance method, class method, static method )
- python中的类方法,静态方法,对象方法
- python中的静态方法和类方法
- Python----静态方法
- python中,类方法和静态方法区别
- 【Python】实例方法、类方法、静态方法之间的区别
- python中的实例方法、静态方法、类方法、类变量和实例变量浅析
- VC与Python交互(一)(静态编译Python的方法)
- python中类方法和静态方法
- PYTHON中的静态方法和类方法
- 2 Python 类,实例,静态方法
- python中的实例方法、静态方法、类方法、类变量和实例变量浅析
- Python的静态方法和类成员方法都可以被类或实例访问,两者概念不容易理清,但还是有区别的
- python——实例方法、静态方法、类方法、类变量和实例变量浅析
- python中的静态方法和类方法
- python 中的实例方法,静态方法以及类方法
- Python的静态方法和类成员方法 分类: python基础学习 2014-08-13 14:21 205人阅读 评论(0) 收藏