转自:
http://www.java265.com/JavaCourse/202206/3808.html
下文笔者讲述java中值传递和引用传递的简介说明,如下所示
值传递简介
在方法的调用过程中 实参把它的实际值传递给形参 此传递过程就是将实参的值复制一份传递到函数中 这种参数传递值的方式,不会对原参数产生任何影响 但是这种参数传递方式,由于涉及参数复制,则不是十分高效
引用传递
引用传递传递的是参数的地址,所以在方法内部修改了参数值 原参数中的值也会发生变化, 采用引用传递的方式,可减少内存的占用 但会修改原数据,请谨慎使用
例
package com.java265; public class TestClass { private static String a = \"89898989\"; public static void main(String[] args) { String name1 = \"java265.com-2\"; String name2 = \"8888\"; System.out.println(\"name1赋值前的值:\" + name1 + \" \" + \"name2的值:\" + name2); name1 = \"奥特曼\"; System.out.println(\"name1赋值后的值:\" + name1 + \" \" + \"name2的值:\" + name2); } } 注意: 以上代码 name1的值发生改变时, 并没有对name2的产生有影响 这是一个典型的值传递示例
例:
引用传递
package com.java265; public class TestClass { int x = 888; public static void main(String[] args) { TestClass a = new TestClass(); TestClass a1 = a; System.out.println(a.x); System.out.println(a1.x);//输出结果为8888 a.x = 232323; System.out.println(a.x); System.out.println(a1.x);//输入结果为232323 } } 注意事项: 当a.x的值发生改变之后 a1.x值也随之改变 这是一个典型的引用传递示例
来源:https://www.cnblogs.com/java265/p/16403393.html
本站部分图文来源于网络,如有侵权请联系删除。