Python 的类定义写完之后就成了一个类对象,而引用这个类对象的就是实例对象。
类中定义的属性和方法都是静态属性,不会随着实例对象的属性和方法的改变而改变。
class C:
count = 0
>> a = C()
>> b = C()
>> c = C()
>> a.count
0
>> b.count
0
>> c.count
0
>> c.count += 10 ######此时类实例对象的count属性改变,覆盖了类C的count,它的改变不会引起C的count改变,只会影响它自身
>> c.count
10
>>C.count +==100
>> a.count
100
>> b.count
100
>> c.count # c的count属性已经覆盖了C的count属性
10
如果属性和方法的名字 相同时,方法会被属性覆盖。
class C:
def x(self):
print 'x-man'
>> c = C()
>> c.x()
x-man
>> c.x = 1 ###### python 的变量赋值不需要 声明
>> c.x
1
>> c.x()
报错,属性c.x已经将 c.x()覆盖了。
网友评论