Java 值传递与引用传递的简介说明

Java 值传递与引用传递的简介说明

转自:

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值也随之改变
 这是一个典型的引用传递示例
 
hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » Java 值传递与引用传递的简介说明