1、在类中的位置不同
2、在内存中的位置不同,可以看看Java程序内存的简单分析
3、生命周期不同
4、初始值
package demo; public class VariableDemo { String name = "成员变量"; public static void main(String[] args) { new VariableDemo().show(); } public void show() { String name = "局部变量"; System.out.println(name); } }
输出结果:局部变量
我们看到输出的是show方法中定义的name变量,在使用变量时遵循的原则是就近原则,那么如何访问到成员变量name呢,Java中提供了this(表示调用对象本身)这个关键字用于访问成员变量。
package demo; public class VariableDemo { String name = "成员变量"; public static void main(String[] args) { new VariableDemo().show(); } public void show() { String name = "局部变量"; System.out.println(this.name); } }
输出结果:成员变量
原文:https://www.cnblogs.com/ljk-shm-0208/p/14361126.html