java 中的成员变量、局部变量、静态变量以及可见修饰符的限定
这属于 java 的基础知识,你可以不了解,也可以不拿它当一回事,代码也一样能敲的顺畅;这是很久之前,我从 C++ 转 java 刚入门那会的看法,那会我坚持自己的理念:
重实践,讲运用,轻理论。当然,对同一样事物,在不同阶段也会有不一样的看法,这理念在某个时段已经不适合我,早就被抛弃了。不扯淡了,直接进入主题。
java 中的变量大致分为成员变量和局部变量两大类。
成员变量:
在类体里面定义的变量称为成员变量;
如果该成员变量有 static 关键字修饰,则该成员变量称为静态变量或类变量;
如果该成员变量没有 static 关键字修饰,则该成员变量被称为非静态变量或实例变量。
局部变量:
形参、方法内定义的变量、代码块中定义的变量,都属于局部变量。
类变量(静态变量)
1. 可以向前引用
2. 变量属于类本身(即静态变量本身属于全局变量,如果局部变量变成静态变量则需要在前面加上final)
3. 类变量(静态变量)不依赖类的实例,类变量只在初始化时候在栈内存中被分配一次空间(公共空间),无论类的实例被创建几次,都不再为类变量分配空间
4. 通过类的任意一个实例来访问类变量,底层都将将其转为通过类本身来访问类变量,它们的效果是一样的
5. 一旦类变量的值被改变,通过类或类的任意一个实例来访问类变量,得到的都将是被改变后的值
6. 将在类的初始化之前初始化
964

被折叠的 条评论
为什么被折叠?



