1、在类中的位置
成员变量:类中,方法外
2、在内存中的位置
成员变量:堆
局部变量:栈
3、初始化的值
成员变量:有默认值
局部变量:没有默认值,只有定义,赋值,才能使用
生命周期
成员变量:随着对象的创建而创建,随着对象的消失而消失
局部变量:随着方法的调用而存在,随着方法的结束而消失
实例
成员变量和局部变量的重名问题,就近原则;
可以使用this关键字区分,this.string指的是类中的成员变量,而不是方法内部的。
public class demo{ string string= 成员变量; public static void main(string[] args) { new demo().show(); } public void show() { string string= 局部变量; system.out.println(string); }}
以上就是java中不同变量有什么区别的详细内容。