python学习DAY10(实例变量和类变量)

实例变量————静态属性(描述各个对象具有的属性)
类的方法————动态属性

类变量:在类中不在任何方法中定义也不是实例变量。(类似于C++的静态变量,位于类的内存中)
作用:节省开销
如果:类变量和实例变量同名时,实例化的对象调用该变量时先寻找实例本身-->后寻找类变量,即先输出实例变量,类变量不输出;如果没有,再输出类变量
对象:在一个对象中修改类变量,实质是在该对象的内存中添加一个变量,但不影响该类变量的值,此时其他对象调用类变量时,依旧是原来的类变量
类名:将类名作为作用域时,修改类变量,此时会影响其他对象的调用(当然,当通过对象去修改类变量时,并不会影响该值,只会影响该对象的类变量的值)
但如果类变量是列表,则通过对象修改或者通过类名修改都会直接影响该类变量!

增加实例变量:(对象.实例变量名=True)   注意:此时新添加的实例变量只归属于该对象所有,其他实例化的对象并不享有此变量
删除实例变量:(del 实例变量名)         从对象的内存中删除该实例变量

 

posted @ 2019-08-16 10:35  LBC不认输  阅读(210)  评论(0编辑  收藏  举报