3052401056
发贴: 7
积分: 0
|
于 2006-07-17 15:24
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 DeathCondition { public static void main(String[] args) { Book novel = new Book(true); novel.checkIn(); new Book(true); System.gc(); } } 为什么结果就打印了一遍”Error: checked out“ ,程序不是创建了2个对象吗?System.gc()不是会调用所有 对象的finalize() 的吗?? 麻烦大家帮我看下 谢谢!
|