值传递
1、简单测试
public class Test { private String name; //构造函数 public Test(String name) { this.name = name; } //基本数据类型测试的方法 private static void test1(int b) { b = 100; System.out.println("基本数据类型测试的方法输出结果:"+b); } //引用变量测试的方法 private static void test2(Test test){ test = new Test("小兰"); System.out.println("引用变量测试的方法输出结果:"+test.name); } public static void main(String[] args) { //基本数据类型测试 int b = 1; test1(b); System.out.println("b的最终结果:"+b); //引用变量测试 Test test = new Test("小明"); test2(test); System.out.println("test的最终结果:"+test.name); } }
结果:

从结果可以看出 java的参数不管是基本数据类型还是引用变量都是值传递,都不会改变原来变量保存的值。
2、从JVM角度看值传递

浙公网安备 33010602011771号