发布网友 发布时间:2022-03-28 16:24
共11个回答
热心网友 时间:2022-03-28 18:10
当对象对当前使用这个对象的应用程序变得不可触及的时候,这个对象就可以被回收了。
java垃圾回收是有jvm自动执行的,不是人为操作的,所以当不存在对某对象的任何引用时,该对象就处于被jvm回收的状态,并不是马上予以销毁。
class Animal {lion 对象在实例化行后从未被使用过。因此 Java 编译器作为一种优化措施可以直接在实例化行后赋值lion = null。因此,即使在 SOP 输出之前, finalize 函数也能够打印出 'Rest in Peace!'。不能证明这确定会发生,因为它依赖JVM的实现方式和运行时使用的内存。如果编译器看到该实例在未来再也不会被引用,能够选择并提早释放实例空间。
热心网友 时间:2022-03-28 19:44
A...不能被强制收回,,,,,,,因为java里关于内存的处理它已经自己都给处理了,不需要你来执行这些操作,,,它里面有一个专门收购垃圾内存的东西,,例如当你创建了一个对象,而这个对象没有一个引用指向他的时候,java自己吧这个没有引用的对象回收了,,,,谢谢热心网友 时间:2022-03-28 21:36
我打个比方吧热心网友 时间:2022-03-28 23:44
问的就有问题,啥叫强制执行啊,还有人回答,服了热心网友 时间:2022-03-29 02:08
A热心网友 时间:2022-03-29 04:50
System.gc();应该可以,等同于调用了以下语句:热心网友 时间:2022-03-29 07:48
java中根本就不可以强制回收 只可建议虚拟机进行垃圾回收 但建议毕竟是建议 虚拟机可以置之不理热心网友 时间:2022-03-29 11:02
对指定的对象强制垃圾回收,目前没有这样直接操作的方法热心网友 时间:2022-03-29 14:34
必须将所有指向这个对象的引用都设为null;热心网友 时间:2022-03-29 18:22
A)垃圾回收不能被强制执行。热心网友 时间:2022-03-29 22:26
选B