1.定义的地方:成员变量是定义在类中方法外的,局部变量是定义在方法声明上或者方法中的,用static修饰过的成员变量可以称为类变量。2.在内存中的位子:成员变量随着对象的创建而存在于堆内存,局部变量在栈内存中,类变量随着类的加载而存在于方法区。3.生命周期:类变量生命周期最长,随着类变化,成员变量随着对象变化,局部变量随着方法变化(所谓的变化就是存在或者消失)。4.注意事项:类变量可以通过类名调用,也可以通过对象调用但是一般用前者,成员变量只能通过对象名调用,而且成员变量是有系统默认初始化值的,局部变量并没有,使用前需要赋值。 |
|