Java中的参数传递

Posted yysy

tags:

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

实参与形参

  1. 形式参数:是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传入的参数。
  2. 实际参数:在调用有参函数时,主调函数和被调函数之间有数据传递关系。在主调函数中调用一个函数时,函数名后面括号中的参数称为“实际参数”。
  3. 实际参数是调用有参方法的时候真正传递的内容,而形式参数是用于接收实参内容的参数。

值传递和引用传递

  1. 值传递(pass by value):是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数。
  2. 引用传递(pass by reference):是指在调用函数时将实际参数的地址直接传递到函数中,那么在函数中对参数所进行的修改,将影响到实际参数。

传共享对象调用(共享对象传递)

  传共享对象调用中,先获取到实际参数的地址,然后将其复制,并把该地址的拷贝传递给被调函数的形式参数。因为参数的地址都指向同一个对象,所以我们也称之为"传共享对象",所以,如果在被调函数中改变了形式参数的值,调用者是可以看到这种变化的。

Java中参数传递

  1. 基本数据类型使用值传递
  2. 对象传递,把对象的引用当做值传递给方法,即共享对象传递
  3. Java对象的传递,是通过复制的方式把引用关系传递了,如果我们没有改引用关系,而是找到引用的地址,把里面的内容改了,是会对调用方有影响的,因为大家指向的是同一个共享对象。
  4. Java的对象传递,如果是修改引用,是不会对原来的对象有任何影响的,但是如果直接修改共享对象的属性的值,是会对原来的对象有影响的。

以上是关于Java中的参数传递的主要内容,如果未能解决你的问题,请参考以下文章

ASP.net MVC 代码片段问题中的 Jqgrid 实现

如何在导航抽屉活动模板中的片段之间传递字符串变量

将变量传递给现代中继中的片段容器

如何将数据从一个活动传递到android中的另一个活动片段? [复制]

一道经典面试题:字符串在Java中如何通过“引用”传递

从本机 c 代码 (JNI) 为 Java 中的回调函数传递多个参数