在面向对象基础篇中,我们讲述了面向对象的很多基础知识,但也有很多限于篇幅并没有涉及到,这里通过进阶篇来完善补充。本篇将详细介绍Python 类的成员、成员修饰符。
以下内容转自http://www.cnblogs.com/wupeiqi/p/4766801.html
类的成员可以分为三大类:变量(属性)、方法和属性方法。
有的地方也称变量为字段,成员变量就是普通字段,类变量就是静态字段。
注意:所有成员中,只有成员变量(普通字段)的内容保存对象中,即:根据此类创建了多少对象,在内存中就有多少个成员变量(普通字段)。而其他的成员,则都是保存在类中,即:无论对象的多少,在内存中只创建一份。
1.1 变量
成员变量属于对象(对象实例化的时候就创建出来,一对一的关系),为每个对象私有,不共用。类变量属于类,在类中直接定义(并非在构造函数中定义),也称为类的公有属性,只要类被访问,就已经生成,为类为模板所产生的对象object所共有,是提供给这个类所属的所有对象都可以访问的属性全局仅一份拷贝。成员变量和类变量的定义和用法如下:
1 class Province(object): 2 3 # 静态字段 4 country = '中国' 5 6 def __init__(self, name): 7 8 # 普通字段 9 self.name = name 10 11 12 # 直接访问普通字段 13 obj = Province('河北省') 14 print(obj.name) 15 16 # 直接访问静态字段 17 print(Province.country) 18 # 通过对象来访问类变量 19 print(obj.country) 20 21 结果输出: 22 河北省 23 中国 24 中国