1.局部变量
局部变量一般是指在方法体内部定义的变量,其作用域是在方法内部有效。
public class Test{
public static void main(String[] args) {
int a;//变量a未被初始化,在被使用时会出现编译错误
//int a = 0;//正确使用方式
System.out.println(a);
}
}
2.成员变量
成员变量是指在类中定义的变量,也就是指属性,其作用域是在整个类中有效。成员变量在定义时可以不指定初始值,系统可以默认初始化。
3.局部变量与成员变量的区别
- public,protect,private,static等修饰符可用于修饰成员变量,但不能修饰局部变量,两者都可以使用final修饰
- 成员变量存储在堆内存中,局部变量存储在栈内存中
- 作用域不同,成员变量在整个类中有效,局部变量只在方法体中有效
- 成员变量可以默认初始化,局部变量必须显式初始化