Java变量
(1)在程序的执行过程中,其值在某个范围内可以发生改变的量
(2)变量的定义格式:
A:数据类型 变量名 = 初始化值;
B:数据类型 变量名;
变量名 = 初始化值;
变量就是用来储存值而保留的内存位置。这就意味着当你创建一个变量时就会在内存中占用一定的空间。
>内存中的一个存储区域
>该区域有自己的名称(变量名)和类型(数据类型)
>Java中的每个变量必须生声明后使用
>改区域的数据可以在同一类型范围内不断变化
总结:关于变量的分类
1.按照数据类型的不同:
1. 基本数据类型(8种)变量
2. 引用数据类型变量
2.按照声明位置的不同
1. 成员变量:实例变量(独立于方法之外的变量,不以static修饰) & 类变量(独立于方法之外的变量,以static修饰)
2. 局部变量:形参(方法签名中定义的变量) & 方法局部变量(方法内定义) & 代码块局部变量(代码块内定义)
main方法内的全局变量
main方法是static修饰的静态方法,只能访问静态变量.main方法外定义的全局变量也必须static修饰
![](https://images2018.cnblogs.com/blog/1191677/201803/1191677-20180301114537650-869617733.png)
![](https://images2018.cnblogs.com/blog/1191677/201803/1191677-20180301114537897-551791961.png)
如何命名java变量
![](https://images2018.cnblogs.com/blog/1191677/201803/1191677-20180301114538393-921465510.png)
![](https://images2018.cnblogs.com/blog/1191677/201803/1191677-20180301114538752-500035098.png)
成员变量(全局变量)和局部变量区分
相同点
1.变量的声明格式:(修饰符)数据类型 变量名 = 初始化值
2.都有作用域
不同点
1.声明的位置不同
成员变量声明在类里,方法外
局部变量声明在方法内,方法的形参部分,代码块内
2.修饰符不同
成员变量的修饰符有:public、private、protected、缺省
局部变量没有修饰符(与所在的方法修饰符一致)
3.初始化值显示的不同(一定都有初始化值)
成员变量:如果在声明时不显示赋值,那么不同的数据类型会有不同的默认初始化值
1. byte、short、int、long ==> 0
2. float、double ==> 0.0
3. char ==> 空格
4. boolean ==> false
5. 引用类型变量 ==> null
局部变量:一定要显示赋值(局部变量没有默认的初始化值)
4.二者在内存中存放的位置不同
![](https://images2018.cnblogs.com/blog/1191677/201803/1191677-20180301114536762-1033137488.png)