Python 类方法
实例方法访问调用对象的实例变量,因为它获取调用对象的引用。但它也可以访问类变量,因为类变量是所有对象共享的。
Python有一个内置函数classmethod(),它将实例方法转换为类方法,只能使用类的引用而不是对象来调用。
语法
示例
在Employee类中,用带有” self “参数(指向调用对象的引用)定义一个showcount()实例方法。它打印出empCount的值。接下来,将该方法转化为类方法counter(),可以通过类引用来访问。
输出
使用对象调用showcount(),使用类调用count(),都显示了员工计数的值。
使用 @classmethod() 装饰器是定义类方法的推荐方式,因为它比首先声明实例方法然后变换为类方法更方便。
类方法充当替代构造函数。使用构建新对象所需的参数定义一个新的newemployee()类方法。它返回构造的对象,这是__init__()
方法所做的事情。
现在有四个员工对象。