其他分享
首页 > 其他分享> > 【学习笔记】值传递和引用传递(待更新)

【学习笔记】值传递和引用传递(待更新)

作者:互联网

值传递和引用传递

 

1.值传递

值传递(pass by value)是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数。

package com.wzt.method;

public class Demo05 {
   public static void main(String[] args) {
       int a = 1;
       System.out.println(a);   //a的值为1

       change(a);   //把a 传入change方法中
       System.out.println(a);   //a的值依旧为1,只是把a传给change,change并没有返回
  }
   public static void change(int a){
       a = 10;
  }
}

image-20220716170803242

 

2.引用传递

引用传递:是指在调用函数时,将实际参数的地址传递到函数中,那么在函数中对参数进行修改,将会影响到实际参数

package com.wzt.method;

//引用传递: 对象 ,本质还是值传递
public class Demo06 {
   public static void main(String[] args) {
       Person person = new Person();
       System.out.println(person.name);   //初始值为null
       change(person);
       System.out.println(person.name);
  }
   public static void change(Person person){
       person.name = "张三";    //这个person.name 在修改Person类的属性name
  }
}
class Person{
   String name;
}

image-20220716171736970

 

标签:name,Person,笔记,传递,person,引用,public,change
来源: https://www.cnblogs.com/wztblogs/p/16484702.html