问题 单项选择题

下列关于对象删除的说法中,正确的是( )。

A.只有当程序中调用System.gc()方法时才能进行垃圾收集

B.Java中的对象都很小,一般不进行删除操作

C.Java把没有引用的对象作为垃圾收集起来并释放

D.必须由程序员完成对象的清除

答案

参考答案:C

解析: Java运行时,系统通过垃圾收集器周期性地释放对象所使用的内存,完成对象的清除。当不存在对一个子对象的引用时,该对象成为一个无用对象。Java的垃圾收集器自动扫描对象的动态内存区,对被引用的对象加标记,然后把没有引用的对象作为垃圾收集起来并释放。垃圾收集器作为一个线程运行。当系统的内存用尽或程序中调用System.gc()要求进行垃圾收集时,垃圾收集线程与系统同步运行。否则垃圾收集器在系统空闲时异步地执行。

单项选择题
多项选择题