关于java中的参数传递问题
2016-11-21 14:16
549 查看
java中的参数传递方式只有值传递一种。
1.关于基本类型的值传递 系统会复制一份实际参数值传入,所以对形参的操作不会影响实际的参数。 2.关于引用类型的值传递 系统会复制该引用变量,并通过值传递传入实参中所存的地址,使两个引用变量同时指向该对象。 由于堆内存中只有一份该对象,所以不论任一引用变量对其进行操作,都是对该对象操作。 所以会造成传入的是引用变量本身的错觉,实际上传入的是其复制品,通过值传递使其也指向了堆中的该对象。
下来看一个题:
class V{ public int i=15; } public class Test { public static void main(String[] args){ Test t=new Test(); t.first(); } public void first(){ int i=5; V v=new V(); v.i=25; second(v,i); System.out.println(v.i); } public void second(V v,int i){ i=0; v.i=20; V val=new V(); v=val; System.out.println(v.i+" "+i); } }
问题是该代码的输出结果.
该图可以清晰的解释输出结果为15 0 20
相关文章推荐
- 关于Java中String类型的参数传递问题
- 关于Java中的参数传递问题
- 关于Java对象作为参数传递是传值还是传引用的问题
- java中关于参数传递问题的解释(传值与传引用的若干问题的解释)
- java中关于参数传递问题的解释(传…
- 关于JAVA中URL传递中文参数的问题
- 黑马程序员——Java中的一个关于参数传递的小问题
- 关于前台URL传递中文参数到java后台乱码的问题
- java 关于传递参数的问题
- Java值传递和地址传递:关于String类型和集合类型作为函数参数时传值问题的测试
- 关于JAVA参数传递的问题!~
- 关于Java 传递参数时的问题
- 关于java语言中方法参数传递问题
- 关于上个Flex-Jsp-DB例子中Flex和Jsp传递中文参数问题的解决方法!(Tomcat服务器)
- 关于"Java中方法参数的传递方式"的探讨
- java中的参数传递问题
- 关于c#执行mysql操作,传递参数的问题
- java方法参数传递问题
- 关于jsp中标签传递中文参数的问题
- 关于在java环境下调用 .net的 webservice无法获取参数的问题