当前位置: 代码迷 >> Java相关 >> 一个小程序问题
  详细解决方案

一个小程序问题

热度:216   发布时间:2006-03-08 22:30:00.0
一个小程序问题
class Book{
boolean checkedOut=false;
Book(boolean checkOut){
checkedOut=checkOut;
}
void checkIn(){
checkedOut=false;
}
public void finalize(){
if(checkedOut)
System.out.println("Error: checked out");
}
}
public class TerminationCondition{
public static void main(String[] args){
Book novel=new Book(true);
System.gc();
}
}
如果把Book novel=new Book(true);
换成new Book(true);输出结果就不一样 谁知道为什么
----------------解决方案--------------------------------------------------------
System.gc();
问题应该出在这里 具体是什么原因还是等高手来吧
----------------解决方案--------------------------------------------------------
System.gc();是强制进行终结动作不是它的原因
----------------解决方案--------------------------------------------------------

当存在一个对象的引用的时候,垃圾回收就不会执行


----------------解决方案--------------------------------------------------------

谢谢了 一时糊涂


----------------解决方案--------------------------------------------------------

4楼对的


----------------解决方案--------------------------------------------------------
受教!!!!
----------------解决方案--------------------------------------------------------
  相关解决方案