Java中什么是值传递?什么又是引用传递?

 我来答
fhddjsjdjjjx
2009-10-04 · TA获得超过2124个赞
知道大有可为答主
回答量:3281
采纳率:0%
帮助的人:1916万
展开全部
值传递是:如int ,float,char,String,Double等,传递的是具体的数值
引用传递:传递的是 对象的使用权,如 数组,接口,对象
mailluzhou
推荐于2016-09-05 · TA获得超过2178个赞
知道小有建树答主
回答量:1767
采纳率:0%
帮助的人:1240万
展开全部
java内存中,主要有两块存放数据的,一个叫栈,一个叫堆,
基本数据类型都是存放在栈里面的,比如char,byte,short,int,long,float,double,boolean,
int i=1;i和1都是存储在栈里面的
复杂数据类型,比如自定义对象,MyObject o=new MyObject("参数");o这个引用变量(或者叫指针)是存放在栈里面的,我们new的空间(或者说这个对象的数据内存块)是存放在堆里面,o所代表的值就是堆里面内存块的首地址

具体的看看下面的例子

http://www.shaguang.com/post/34.html
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
歪瑞顾K
2009-10-04 · TA获得超过2905个赞
知道大有可为答主
回答量:2731
采纳率:33%
帮助的人:2201万
展开全部
JAVA中 基本数据类型是值传递

复杂数据类型(自定义类型,对象) 是引用传递

这主要是因为java的对象名 本身只代表引用类型 不代表对象
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
BlueWanderer
2009-10-04 · TA获得超过9209个赞
知道大有可为答主
回答量:5673
采纳率:83%
帮助的人:1989万
展开全部
对于基本类型(byte shor int long float double boolean...) 传实参的时候直接把具体值复制,就是你说的值传递

对于对象类型,实际数据很大,所以传实参的时候只传递一个这个对象的编号,也就是引用。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式