定义位置不一样,作用范围不一样,默认值不一样。 局部变量 在方法的内部。只有方法当中才可以使用,出来方法就不能用没有默认值,如果想要使用,必须手动进行赋值。位于栈内存。随着方法进栈而诞生,随着方法出栈而消失。 成员变量 在方法的外部,直接写在类当中。整个类全都可以通用。如果没有赋值,会有默认值,规则和数组一样。位于堆内存。随着对象创建而诞生,随着对象被垃圾回收而消失。