成员变量和局部变量的区别?
答:
(1)在类中位置不同:
成员变量:在类中方法外。
局部变量:在方法中或代码块中。
(2)作用范围不同:
成员变量:当前类的很多方法。
局部变量:当前一个方法或代码块。
(3)生命周期不同:
成员变量:当前对象从创建到消失。
局部变量:当前方法从开始执行到执行完毕。
(4)内存中位置不同:
成员变量:在堆内存。
局部变量:在栈内存。
(5)初始化值不同:
成员变量:有默认初始化值。
局部变量:没有默认初始值,必须定义,赋值,然后才能使用。
备注:局部变量名称可以和成员变量名称一样,在方法中使用的时候,采用的是就近原则。