成员变量和局部变量的区别是什么? 1.定义位置不同。 局部变量:定义在方法内,或者方法形参上的变量成员变量:定义在类中,方法外的变量 2.在内存中的存储位置不同 局部变量:存储在栈中,属于方法的,随着方法的调用而存在,随着方法的调用完毕而消失成员变量:存储在堆中,属于对象的,随着对象的创建而存在,随着对象的销毁而销毁 3.生命周期不同 局部变量:没有初始化值,必须先声明,然后才能创建。成员变量:有默认初始化值,例如:int:0、double:0.0、boolean:false、引用类型:null