类中的位置不同
成员变量:在类中方法外
局部变量:在方法中
内存中的位置不同
成员变量:在堆内存,成员变量属于类,类进的是堆
局部变量:在栈内存,局部变量属于方法,方法压进栈
生命周期不同
成员变量:成员变量属于类,随着类的加载而加载,随着类的消失而消失。
局部变量:局部变属于方法,随着方法的加载而加载,随着方法的加载完毕而消失
初始化值不同
成员变量:有默认初始化值,String是null。Int是0;
局部变量:没有初始化值,使用前必须先初始化
成员变量和局部变量的注意事项:
A 成员变量和局部变量名称可以一样,但是在使用的时候遵循就近原则
B 基本数据类型变量有byte short int long double float char Boolean
C 引用数据类型变量有数组,接口,类和枚举 |
|