找回密码
 注册

QQ登录

快捷登录

新浪微博登陆

搜索
CDD 法语助手

java题目求解

12
回复
833
查看
[ 复制链接 ]
头像被屏蔽

新浪微博达人勋

提示: 该帖被管理员或版主屏蔽
2009-2-27 21:59:40
头像被屏蔽

新浪微博达人勋

提示: 作者被禁止或删除 内容自动屏蔽
2009-2-27 22:29:36

使用道具 举报

新浪微博达人勋

在方法test中,i只是方法main中is对象的引用的一个拷贝,将这个引用拷贝指向另一个对象并不会改变原对象的内容。要避免这种引用重指向的问题,可以在声明中加入final关键字:test(final Integer i)

ps:可以搜索一 ...
revever 发表于 2009-2-27 22:29

确实是这样的
谢谢你的解答

我一下没想通
这个知识点以前是知道的
2009-2-27 22:42:31

使用道具 举报

头像被屏蔽

新浪微博达人勋

提示: 作者被禁止或删除 内容自动屏蔽
2009-2-28 00:27:11

使用道具 举报

新浪微博达人勋

我猜还是5 呵呵
这是关于地址引用还是值引用的问题
int 是值 但是 Integer是class
如果我猜错了 就当没说哈 呵呵
dxiao2 发表于 2009-2-28 00:27

大哥这个不是猜的啦
我用ecplise测试过啦
结果是5
因为是引用句柄的复制并不能改变原来句柄所指向的对象的内容
2009-2-28 02:16:08

使用道具 举报

新浪微博达人勋

你是学什么的,这个问题吗!太简单了,都不用解释,吐血~~~~~~~~~~~~~~~~
2009-2-28 03:07:00

使用道具 举报

头像被屏蔽

新浪微博达人勋

提示: 作者被禁止或删除 内容自动屏蔽
2009-2-28 11:52:24

使用道具 举报

头像被屏蔽

新浪微博达人勋

提示: 作者被禁止或删除 内容自动屏蔽
2009-2-28 12:47:04

使用道具 举报

头像被屏蔽

新浪微博达人勋

提示: 作者被禁止或删除 内容自动屏蔽
2009-2-28 21:03:48

使用道具 举报

新浪微博达人勋

本帖最后由 whitedeep 于 2009-2-28 22:33 编辑
不过我也有点不明白,Integer是类啊,不是基本类型,怎么就不是引用传递了呢?
wukw 发表于 2009-2-28 12:47


Integer is= new Integer(5);
创建了一个object, is是一个指向这个object的reference

test(is);
参数i是系统调用test函数时临时创建的另外一个reference, 同样指向之前创建的object

i= new Integer(100);
创建了一个新的object,并且将i指向新的object,is所指向的地址不会改变

这里其实也可以看做是传递引用,但是很可惜,Integer这个class没有赋值函数,只能直接新建,如果有个函数setValue,我们不做i= new Integer(100)而是i.setValue(100),结果就不一样了.
2009-2-28 22:30:29

使用道具 举报

头像被屏蔽

新浪微博达人勋

提示: 作者被禁止或删除 内容自动屏蔽
2009-2-28 22:57:26

使用道具 举报

新浪微博达人勋

10# whitedeep

正确
2009-3-13 03:46:01

使用道具 举报

新浪微博达人勋

你是学什么的,这个问题吗!太简单了,都不用解释,吐血~~~~~~~~~~~~~~~~
flyant 发表于 2009-2-28 03:07


那你慢慢去吐吧!!

看不惯,发泄一下!
2009-3-13 10:08:52

使用道具 举报

您需要登录后才可以回帖 登录 | 注册 新浪微博登陆

本版积分规则

返回顶部