java基础学习——值传递与引用传递
2017-12-03 11:07
211 查看
一、值传递:
当把java的基本类型作为参数传给函数体时,传入的参数在函数体内部变成了局部变量,这个局部变量是输入参数的一个拷贝。所有的函数体内部的操作执行结束后,这个局部变量也就完成了它的使命,它不影响作为参数的变量。
二、引用传递:
java中用对象作为入口参数的传递缺省为“引用传递”,仅仅传递了对象的一个引用。当函数体内部对输入变量改变时,实质上就是在对这个对象的直接操作。
结论:
1. 基本数据类型传值,对形参的修改不会影响实参;
2. 引用类型传对象,形参和实参指向同一个内存地址,所以对参数的修改会影响到实际的对象;
3. String,Integer,Double等类型特殊处理,可以理解为传值,最后的操作不会修改实参对象。
当把java的基本类型作为参数传给函数体时,传入的参数在函数体内部变成了局部变量,这个局部变量是输入参数的一个拷贝。所有的函数体内部的操作执行结束后,这个局部变量也就完成了它的使命,它不影响作为参数的变量。
二、引用传递:
java中用对象作为入口参数的传递缺省为“引用传递”,仅仅传递了对象的一个引用。当函数体内部对输入变量改变时,实质上就是在对这个对象的直接操作。
结论:
1. 基本数据类型传值,对形参的修改不会影响实参;
2. 引用类型传对象,形参和实参指向同一个内存地址,所以对参数的修改会影响到实际的对象;
3. String,Integer,Double等类型特殊处理,可以理解为传值,最后的操作不会修改实参对象。
相关文章推荐
- Java 基础【04】数组内存分配 引用传递 值传递
- 小example说明java的值传递和引用传递,基础变量和对象在内存里的区别,堆栈
- 讨论java是值传递还是引用传递,到String 常量池的问题学习。
- java基础学习笔记第三天 this . static 的用法和值传递,引用传递
- 【Java基础】11、java方法中只有值传递,没有引用传递
- Java学习笔记(17)-- 值传递与引用传递
- JAVA学习笔记(七)- 值传递与引用传递
- 【Java基础】值传递与引用传递的区别?
- 【Java学习】java方法参数的值传递和引用传递
- Java学习随笔1:Java是值传递还是引用传递?
- 【Java基础】基本类型的包装类作为参数传递是值传递还是引用传递
- Java中, 不存在引用传递(也就是地址传递)一说, 全部都是值传递
- java到底是按值传递还是按引用传递?
- 【java】值传递和引用传递理解
- java的值传递和引用传递问题
- Java 值传递 引用传递之我见
- java的值传递还是引用传递
- 18天Java学习---6.面向对象编程01-类对象的构建及对象的引用传递
- Java 值传递与引用传递
- Java中到底是值传递还是引用传递?