局部变量和成员变量
局部变量的定义
定义在方法中,或者方法声明上的变量就是局部变量
成员变量的定义
定义在类中,方法外的变量就是成员变量
成员变量和局部变量的区别
定义位置不同
局部变量:定义在方法中或者方法的声明上
成员变量:定义在类中方法外
内存位置不同
局部变量:存储在栈中的方法中
成员变量:存储在堆中的对象中
初始值不同
局部变量:没有默认初始值,想要使用一定要先赋值在使用
成员变量:有默认初始化值,如果不赋值也可以使用
String类型
的变量默认初始值null
int类型
的变量默认初始值0
boolean类型
的变量默认初始值false
double类型
的变量默认初始值0.0
char类型
的变量默认初始值'\u0000'
生命周期不同
局部变量:因为是存储在方法中,所以是随着方法的存在而存在,随着方法的消失而消失
成员变量:因为是存储在对象中,所以是随着对象的存在而存在,随着对象的消失而消失
作用域范围不同
局部变量:出了方法就用不了了
成员变量:在本类中的方法中都可以使用