分析&回答 可见范围 成员变量只能被对象所调用 。静态变量可以被对象调用,也可以被类名调用。 静态变量前要加static关键字,而实例变量前则不加。 存储不同 成员变量数据存储在堆内存的对象中,所以也叫对象的特有数据。 静态变量数据存储在方法区(共享数据区)的静态区,所以也叫对象的共享数据 生命周期不同 成员变量与对象共存亡,随着对象创建而存在,随着对象被回收而释放 静态变量与类共存亡,随着类的加载而存在,随着类的消失而消失(类不消失一直存在(不考虑回收机制),生命周期长) 反思&扩展 注意:成员变量(静态和非静态)、字符串常量池由方法区迁移到堆。 成员变量与局部变量的区别? 成员变量的作用域是在类中;局部变量的作用域是在方法中 成员变量可以不赋初值;局部变量必须赋初值