1.作用域不同 成员变量的作用域是整个类中的所有方法。 局部变量的作用域是定义在所有的方法内部。 2.定义的位置不同 一个是在类体中。 一个是在方法中。 3.内存分配位置不同 局部在栈中。 成员在队中。 4.生命周期不同 局部变量的生命周期依赖于方法的调用开始和结束。 成员变量的生命周期依赖于所在的对象。 5.初始化方式不同 局部变量必须先赋值后使用。 成员变量可以只声明,jvm会执行默认初始化。 6.优先值不同 同名的变量,局部变量的优先级高于成员的。