java方法传参机制

Posted 天赋不够努力来凑

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java方法传参机制相关的知识,希望对你有一定的参考价值。

一、基本数据类型传参机制

基本数据类型传参是按值拷贝,形参改变不会影响实参

二、引用类型传参机制

引用类型传参是按地址传参,形参改变会影响实参,分析以下代码,看看传入参数arr1数组的值会不会发生改变

package myworkspace01;
public class FirstSample{
	public static void main(String[] args) {
		int[] arr1= {1,2,3};
		A a1=new A();
		a1.test(arr1);
		System.out.println(arr1[0]);
	}
}
class A{
	public void test(int[] arr) {
		arr[0]=200;
	}
}

结果arr1[0]的值发生了改变,我们引入引用类型传参机制

引用类型传参机制:因为参数是引用类型, 传的是地址,所以test方法里面的arr也是地址,和arr1一样指向0x0011的数组。所以改变arr[0]就是改变指向的数组下标0的值,因为arr1也指向那个数组,所以也改变了值。

以上是关于java方法传参机制的主要内容,如果未能解决你的问题,请参考以下文章

java方法传参机制

java基础3-重载+命令行传参+递归+数组+排序

Java函数的传参机制

动态加载模块,python反射机制

java 方法传参时,不是必须传的参数如何设置

mybatis动态sql片段与分页,排序,传参的使用