成员变量和局部变量区别
变量根据 定义位置的不同 ,我们给变量起了不同的名字。如下图所示: 成员变量和局部变量区别 成员变量:类中,方法外 局部变量:方法中或者方法声明上(形式参数) 作用范围不一样 成员变量:类中 局部变量:方法中 初始化值的不同 成员变量:有默认值 局部变量:没有默认值。必须先定义,赋值,最后使用 在内存中的位置不同 成员变量:堆内存 局部变量:栈内存 生命周期不同 成员变量:随着对象的创建而存在,随着对象的消失而消失 代码举例 public class Demo01VariableDifference { String name; // 成员变量 public void methodA() { int num = 20; // 局部变量 System.out.println(num); System.out.println(name); } public void methodB(int param) { // 方法的参数就是局部变量 // 参数在方法调用的时候,必然会被赋值的。 System.out.println(param); int age; // 局部变量 // System.out.println(age); // 没赋值不能用 // System.out.println(num); // 错误写法! System.out.println(name); } }