SCJP垃圾收集的问题.... TogetherJ不是又被赋给temp了吗? 1040xFFFFFFF4 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我觉得应该是运行到105行会出现一个垃圾收集.-12的二进制补码是:0xFFFFFFF4 是2个吧,String是一个immutable类,这表明在102的地方会出现一个可以回收的对象。你能肯定答案吗? 答案一定是一个啊,105 product = null;这意味着product将被回收,也只有她。把对象付给变量,在规范里面清楚的写着,只是简单的把对象指向了对象,(即内存地址),对变量重新付值,并不以为着回收对象,当两个变量引用同一个对象时,其中一个被另外付值,他原先指向的对象当染不能被回收。您明白了吗?也 顶楼的兄弟!哪里能搞到scjp的资料阿! http://personal.monline.com.cn/feyo/bbs/list.asp?boardid=19这里有SCJP的资料 只有一个!只有当对应已经没有引用时才会被收集,而105处虽然product已经被付为null,但对象还有temp这个引用,因此不会被收集 明明应该是四个,String newProduct = new String("JCertify")机器产生一个string类"JCertify",然后调用string的构造方法之一:new String(String original) 看,这不产生了一个可回收的对象 一个就一个,new的对象没有变量指向就over了。 是一个被回收 : new String("JCertify")String("eMonogram")被newProduct引用后,String("JCertify")被回收而String("TogetherJ")被temp引用."JCertify"这些字符串的确是生成的对象,但是这种直接指定的字符串比较特别,被存放在常量池中,不般不被释放. 当然是一个!jvm垃圾回收的机制是这样的:当内存中分配的一块内存区域没有被任何变量引用时,它将被垃圾回收!103分配的内存在105行还被temp引用,所以不回收!如果加上temp = null;则将被回收! 面试题目!!!!! 谁有PowerDesigner的入门教程.. 和八种类关系的解析... 设计模式课程!! 求助:关于日历中阳历转换成阴历的Java代码 MappedByteBuffer内存占用问题 outer 我在Action中新建一个bean,想传到JSP页面中,怎么样使用纯 的JSP代码取出BEAN的属性值呢, 大家来看看 java中怎样在一个线程中发送message到另一个线程中 transient关键字是什么意思????? java初学者,来者有分,今天结贴 一个DNS解析的问题 发邮件时遇到,代理服务器的问题....
把对象付给变量,在规范里面清楚的写着,只是简单的把对象指向了对象,(即内存地址),对变量重新付值,并不以为着回收对象,当两个变量引用同一个对象时,其中一个被另外付值,他原先指向的对象当染不能被回收。您明白了吗?也
哪里能搞到scjp的资料阿!
只有当对应已经没有引用时才会被收集,
而105处虽然product已经被付为null,但对象还有temp这个引用,因此不会被收集
机器产生一个string类"JCertify",然后调用string的构造方法之一:new String(String original) 看,这不产生了一个可回收的对象
String("eMonogram")被newProduct引用后,String("JCertify")被回收
而String("TogetherJ")被temp引用."JCertify"这些字符串的确是生成的对象,但是这种直接指定的字符串比较特别,被存放在常量池中,不般不被释放.
jvm垃圾回收的机制是这样的:
当内存中分配的一块内存区域没有被任何变量引用时,它将被垃圾回收!103分配的内存在105行还被temp引用,所以不回收!
如果加上temp = null;
则将被回收!