我的CSDN | 我的51CTO

python的类定义与实例化

理解类属性和实例属性:

直接在类里面定义的变量叫类属性,类属性是公有的,每个类实例化就自动拥有类的属性,且实例化对象的这个属性的初始地址指向类属性的地址

如果直接给实例化对象的属性赋值这样会改变该属性的内存地址,此时不在指向类属性地址,而是在实例内存地址中开一块空间存该属性

在类方法里面定义的self.xx是实例属性,是私有的,每个实例有自己的存储空间,各自的私有属性存在各自的空间中

当然也可以直接给实例化对象增加属性如a1是Animal的实例化对象,则a1.age = 18会给a1添加一个类属性,但Animal的其他实例化对象并没有age属性

 

posted @ 2017-06-22 23:51  smileyes  阅读(608)  评论(0编辑  收藏  举报