A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王松朝 金牌黑马   /  2011-7-18 17:08  /  2788 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

int的包装类 Integer 是final的
那自动装箱就会产生一个新对象,是么? 
还有强制类型转换的时候也会产生新的对象么?

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

4 个回复

倒序浏览
黑马网友  发表于 2011-7-18 17:12:43
沙发
为了节省创建对象的时间和空间,对于一些常用的对象,会将它杂内存中缓存起来。
数据在进行自动装箱的时候,将首先检查内存中是否已经有使用自动装箱产生的具有相同值的对象。如果已经有一个“值”相同的对象存在,那么并不会产生新的对象。

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
黑马网友  发表于 2011-7-19 00:26:08
藤椅
看楼上的回答,让我想到了String类,只要值相同,就是同一个对象.
回复 使用道具 举报
黑马网友  发表于 2011-7-20 12:33:48
板凳
疑惑!!!
回复 使用道具 举报
黑马网友  发表于 2011-7-20 15:21:41
报纸
int  类型在一般情况下数据是被放在常量池中的,自动装箱的时候是产生了一个引用,没有产生新对象。强制类型转换的时候产生了新的对象,并且有了新的引用。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马