一:值传递的概念
值传递是在调用方法的时候出现的概念,如果在调用方法的时候传递的参数是原变量的一个副本(拷贝原来的变量而得到),那么这个种参数的传递方式叫做值传递,与值传递对应的是引用传递。当传递的参数是一个引用数据类型(非基本基本数据类型)的时候,此时如果传递的是原变量(此时的元变量是--个对象的地址)的副本(地址的副本)那么依然属于值传递,如果传递的是原变量的真正引用(不需要副本就是同一个)那么这种传递方式就是引用传递。
DEMO:基本数据类型的参数
package com. bai . demo;
public class Hello {
public static void main(String[] args) {
//声明 了变量
int
num=10;
change(num);
System. out . println(num);//输出10还是100
}
//该方法改变了你传递的实际参数
public static void
change(int temp) {
temp*=10;
}
}
发现了num没有被改变,如果方法的参数类型是基本的数据类型则在专递实际参数的时候本质将原来的numm复制一个副本传递给方法,那么在方法中修改的值就是一个副本,对原来的值没有影响。
下面我们观察如果方法的参数不是基本数据类型的时候呢?
DEMO:引用数据类型的参数传递
package com. bai. demo;
public class Hello {
public static void main(String[] args) {
//声明了变量
Person
per