成员变量与局部变量的区别
类中的位置不同:
- 成员变量:类中,方法外
- 局部变量:方法内或方法声明上
作用范围不同:
- 成员变量:类中
- 局部变量:方法中
初始化值的不同:
- 成员变量:有默认值
- 局部变量:无默认值
练习
说明x和y和z哪个是局部变量哪个是成员变量,该程序编译能通过吗,为什么?
public class Main {
static int x;
int z;
public static void main(String[] args){
int y;
System.out.println(x);
System.out.println(y);
}
}
答案: x和z为成员变量,y为局部变量,编译不通过,因为y没有初始值(局部变量没有初始值,在使用时需要赋值)