java变量分类
1、变量根据声明位置不同
- 局部变量:方法体中声明的变量和方法的每一个参数
- 成员变量:方法体之外,类体内声明的变量
2、成员变量是否使用static关键字
- 声明时使用static关键字为静态成员变量(简称静态变量)
- 没有使用static关键字为实例成员变量(简称实例变量)
2、三者之间的区别
- 静态变量:成员变量的一种,方法体外类内,使用static关键字修饰,在JVM中属于方法区,初始化时有默认初始值
- 实例变量:成员变量的一种,方法体外类内,在JVM中属于方堆中,初始化时有默认初始值
- 局部变量:声明在方法体内,在JVM中属于栈中,声明时没有默认的初始值,初始化时必须手动赋值
补充:实例变量的调用只能通过对象名调用,静态变量的调用可以通过对象名调用也可通过类名直接调用