设为首页 加入收藏

TOP

Java 传值和传引用小结
2014-11-24 02:09:09 来源: 作者: 【 】 浏览:0
Tags:Java 引用 小结

参数传值


方法中所有参数都是“传值” (方法中参数变量的值是调用者指定然的值副本)


对于基本数据类型的参数,向该参数传递的值的不可以高于该参数的级别(不能向int型参数传递一个float值) 如果 出现会有什么情况发生??


引用类型参数的传值


如果改变参数变量所引用的实体, 就是导致得变量的实体发生同样的变化。因此,两个同类型的引用型变量如果具有同样的有引用,就会用同样的实体,但是改变参数的引用不会影响向其传值 的变量的引用。


(这一个什么话 我看了N遍 怎么就是不懂呢???)


Java程序的函数调用到底是传值呢还是传参呢?这可是个难缠的问题,


最经典的解释莫过于“Java函数是传值的,Java函数传递的参数是对象的引用”


传递参数的时候传递的就是相应内存地址中的数,所以说“Java函数是传值的”。


对于基本类型这个数就是其值本身,传递值的结果就是,改变新的变量的值不影响旧的变量的值;而对于对象来说这个数是它的地址,传递这个值就相当于传递了真实对象的引用,传递了引用或者说是地址的结果就是变化会全局可见,所以又可以说“Java函数传递的参数是对象的引用”。


对象是传引用的   参数是传值的


在Java中,你从来没有传递对象,你传递的仅仅是对象的引用!


传值意味着当参数被传递给一个方法或者函数时,方法或者函数接收到的是原始值的副本。因此,如果方法或者函数修改了参数,受影响的只是副本,原始值保持不变。


在Java中,传递一个引用类型的参数的结果只是传递引用的副本(传值)而非引用自身。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Java之运行时异常与编译时异常区别 下一篇Linux内核体系结构简单介绍

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: