ToB企服应用市场:ToB评测及商务社交产业平台

标题: Java 值传递与引用传递的简介说明 [打印本页]

作者: 道家人    时间: 2022-8-22 07:10
标题: Java 值传递与引用传递的简介说明
转自:
http://www.java265.com/JavaCourse/202206/3808.html
下文笔者讲述java中值传递和引用传递的简介说明,如下所示
值传递简介
  1. 在方法的调用过程中
  2. 实参把它的实际值传递给形参
  3.   此传递过程就是将实参的值复制一份传递到函数中
  4. 这种参数传递值的方式,不会对原参数产生任何影响
  5. 但是这种参数传递方式,由于涉及参数复制,则不是十分高效
复制代码
引用传递
  1. 引用传递传递的是参数的地址,所以在方法内部修改了参数值
  2. 原参数中的值也会发生变化,
  3. 采用引用传递的方式,可减少内存的占用
  4. 但会修改原数据,请谨慎使用
复制代码
  1. package com.java265;
  2. public class TestClass {
  3.     private static String a = "89898989";
  4.     public static void main(String[] args) {
  5.         String name1 = "java265.com-2";
  6.         String name2 = "8888";
  7.         System.out.println("name1赋值前的值:" + name1 + " " + "name2的值:" + name2);
  8.         name1 = "奥特曼";
  9.         System.out.println("name1赋值后的值:" + name1 + " " + "name2的值:" + name2);
  10.     }
  11. }
  12. 注意:
  13. 以上代码
  14. name1的值发生改变时,
  15.   并没有对name2的产生有影响
  16. 这是一个典型的值传递示例
复制代码
例:
引用传递
  1. package com.java265;
  2. public class TestClass {
  3.     int x = 888;
  4.     public static void main(String[] args) {
  5.         TestClass a = new TestClass();
  6.         TestClass a1 = a;
  7.         System.out.println(a.x);
  8.         System.out.println(a1.x);//输出结果为8888
  9.         a.x = 232323;
  10.         System.out.println(a.x);
  11.         System.out.println(a1.x);//输入结果为232323
  12.     }
  13. }
  14. 注意事项:
  15.    当a.x的值发生改变之后
  16.      a1.x值也随之改变
  17. 这是一个典型的引用传递示例
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4