想看重点的,可直接看人话部分。
变量分类:
一、根据数据类型分类:
1.基本数据类型
2.引用数据类型
二、根据类声明位置分类:
1.成员变量
(1)类变量
(2)实例变量
2.局部变量
三、区分类变量和实例变量:
首先要区分好类和对象!!
- 官方话:
类是对对象的抽象。
对象是对客观事物的抽象。
类变量也叫静态变量,也就是在变量前加了static 的变量。
实例变量也叫对象变量,即没加static 的变量。
所有的实例对象都共用一个类变量,内存中只有一处空间是放这个类变量值的。
如果一个对象把类变量值改了,另外一个对象再取类变量值就是改过之后的了。
(静态变量并不是说其就不能改变值,不能改变值的量叫常量。 其拥有的值是可变的 ,而且它会保持最新的值。说其静态,是因为它不会随着函数的调用和退出而发生变化。即上次调用函数的时候,如果我们给静态变量赋予某个值的话,下次函数调用时,这个值保持不变。)
- 人话:
类是规则。
对象是规则下的产品。
类变量是规则的一部分。
实例变量是产品的一部分。
一个规则在制定好了之后,类变量也被制定好了,已经存在。但是实例变量并没有被创生。
当第一个产品被创造出来的时候,类变量已经存在,实例变量1此时存在。
当第二个产品被创造出来的时候,类变量已经存在,实例变量2此时存在。
当第三个产品被创造出来的时候,类变量已经存在,实例变量3此时存在。
第三个产品将类变量改为类变量1,
第二个产品的类变量变成类变量1,
第一个产品的类变量变成类变量1。
来源:CSDN
作者:pz641
链接:https://blog.csdn.net/pz641/article/details/104799218