java局部变量和成员变量的差异对比
1. 定义的位置不一样【重点】
- 局部变量:在方法的内部
- 成员变量:在方法的外部,直接写在类中
*
2. 作用的范围不一样【重点】
- 局部变量:只有方法当中才可以使用,出了方法就不能用
- 成员变量:整个类都可以用。
3. 默认值不一样【重点】
- 局部变量:没有默认值,如果要想使用必须手动进行赋值
- 成员变量:如果没有赋值,默认会有一个值,规则和数组一样
4. 内存的位置不一样(了解)
5. 生命周期不一样(了解)
- 局部变量:随着方法进栈而产生,随着方法出栈而消失
- 成员变量:随着对象创建而诞生,随着对象被垃圾收回而消失
6. 上代码
public class Demo01VariableDifference {
String name;
public void methodA() {
int num = 10;
System.out.println(num);
System.out.println(name);
}
public void metjodB(int param) {
System.out.println(param);
int age;
System.out.println(name);
}
}