关于java中函数参数传递的两种方式的总结

Posted

tags:

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

类似于C++中函数参数的传递方式,java由于语言体系中不存在指针的概念,所以C++有3种参数传递方式;而java种只有两种。下面是我的一点体会:

分别为:引用类型传递和基本数据类型传递。引用传递本质上并没有新创建对象,而是声明了另一个引用来指向同一个对象。而基本数据类型的参数传递是值传递,在内存中是拷贝出另一份。以下是代码解释:

 1 package asgh;
 2 
 3 public class RefDemo {
 4 
 5     public static void main(String[] args) {
 6         Student zs;
 7         zs=new Student();
 8         zs.name="zhangsan";
 9         a(zs);
10         System.out.println(zs.name);
11         
12         int[] arr=new int[] {1,2,3,4,5,6};
13         b(arr);
14         System.out.println(arr[0]);
15         
16         int i=100;
17         int j=200;
18         c(i,j);
19         System.out.println(i+"  "+j);
20 
21     }
22 
23     public static void c(int  i, int j) {
24         int temp=0;
25         temp=i;
26         i=j;
27         j=temp;
28         
29     }
30 
31     public static void b(int[] arr) {
32         arr[0]=300;
33         
34     }
35 
36     public static void a(Student zs) {
37         zs.name="lisi";
38         
39     }
40 
41 }
42 
43 class Student{
44     String name;
45     int age;
46     String address;
47 }

 

以上是关于关于java中函数参数传递的两种方式的总结的主要内容,如果未能解决你的问题,请参考以下文章

中 resolve 如何传递多个参数

Ajax中POST/GET参数传递中“+”号的处理

关于Wscript.Shell中 Run参数传递

关于Wscript.Shell中 Run参数传递

关于mybatis的使用之怎么传递参数总结

MyBatis动态传递参数的两种方式#{}和${}