> 文档中心 > 成员变量和局部变量的区别?

成员变量和局部变量的区别?

成员变量和局部变量的区别?

    • 1. 定义位置不同
    • 2. 内存位置不同
    • 3. 初始值不同
    • 4.生命周期不同
    • 5.作用域范围不同

1. 定义位置不同

  局部变量:定义在方法中或者方法的声明上  成员变量:定义在类中方法外

2. 内存位置不同

  局部变量:存储在栈中的方法中  成员变量:存储在堆中的对象中

3. 初始值不同

  局部变量:没有默认初始值,想要使用一定要先赋值在使用  成员变量:有默认初始化值,如果不赋值也可以使用String类型的变量默认初始值 nullint类型的变量默认初始值 0boolean类型的变量默认初始值  falsedouble类型的变量默认初始值 0.0char类型的变量默认初始值 '\u0000'

4.生命周期不同

  局部变量:因为是存储在方法中,所以是随着方法的存在而存在,随着方法的消失而消失  成员变量:因为是存储在对象中,所以是随着对象的存在而存在,随着对象的消失而消失

5.作用域范围不同

  局部变量:出了方法就用不了了  成员变量:在本类中的方法中都可以使用

麦克风网