当前位置: 技术问答>java相关
“当某个实例不再被任何对象引用时就会被垃圾回收机制回收”,那么怎样才算是不被任何对象引用呢?
来源: 互联网 发布时间:2015-03-14
本文导语: | java的解释系统里,垃圾回收是以一个独立的线程不断的工作来完成。至于对象不被引用, 我是简单的理解为不被引用(使用),不被参考(出现)。 | 大概就是:没有任何reference指向这个对象。 当...
|
java的解释系统里,垃圾回收是以一个独立的线程不断的工作来完成。至于对象不被引用,
我是简单的理解为不被引用(使用),不被参考(出现)。
我是简单的理解为不被引用(使用),不被参考(出现)。
|
大概就是:没有任何reference指向这个对象。
当然另外还有一些较为复杂的情况会影响上述“GC-ready判定算法”,但一般来说
就是这样。
当然另外还有一些较为复杂的情况会影响上述“GC-ready判定算法”,但一般来说
就是这样。
|
一个简单的判断,在变量超出运行期后回收,如:
void a(){
Integer v;
……
}
遇到右大扩号时,v自动回收,无须delete。大部分的判断基于对象的作用范围,见Thinking in java,c#中据说也有该功能。
void a(){
Integer v;
……
}
遇到右大扩号时,v自动回收,无须delete。大部分的判断基于对象的作用范围,见Thinking in java,c#中据说也有该功能。
|
一个最简单的例子
Float f = new Float(0);
f=null; //
Float f = new Float(0);
f=null; //