1. python中类的属性,相当于C++中的public属性,可以被所有实例对象访问。
2. 但是因为类属性只有一份,所以如果有实例对象对类属性进行了修改,则该类的所有实例对象所拥有的对应的类属性都。
比如: class Person(object):
address = 'china' //类属性
类属性的修改:
Person.address = 'Asia'
3. 类属性和实例属性不一样,实例属性是各个实例单独拥有,但是类属性可以被所有实例对象访问。
比如: class Person(object):
address = 'china' //类属性
def __init__(slef, name):
self.name = name //实例属性
4. 如果实例属性和类属性重名了,访问时会优先访问实例属性。
比如: class Person(object):
address = 'china' //类属性
def __init__(slef, name, address):
self.name = name //实例属性
self.address = address //与类属性重名
应用:
p1 = Person('Lisa', 'hebei')
print p1.address //结果为 hebei,而不是china