首页 > 试题广场 >

下列哪些语句关于内存回收的说明是正确的? ( )

[单选题]
下列哪些语句关于内存回收的说明是正确的? (  )
  • 程序员必须创建一个线程来释放内存
  • 内存回收程序负责释放无用内存
  • 内存回收程序允许程序员直接释放内存
  • 内存回收程序可以在指定的时间释放内存对象
选B。
A、JVM一旦启动,就会创建一个守护线程来监测是否需要有对象内存被释放。
C、无法直接释放。
D、不可以指定时间,System.gc(),只是提醒JVM可以进行一次Full GC,但是什么时候真正执行,还是不知道的。



编辑于 2018-07-09 23:18:20 回复(11)
在空闲时间以不定时的方式动态回收无任何引用的对象占据的内存空间
发表于 2017-03-11 18:37:43 回复(6)

程序

程序员

因缺思听,看混

发表于 2017-12-07 22:31:07 回复(11)
A : JVM会自己创建垃圾回收线程;
B :内存回收线程的作用,正确;
C :程序员无法释放内存,程序员最多是使用System.gc()和Runtime.getRuntime().gc()通知系统释放内存;
D:系统释放内存时间是不确定的,会根据当前程序的内存使用情况而定。
发表于 2019-09-10 17:32:46 回复(2)
能问一下其他答案错的原因吗
发表于 2017-06-19 11:30:50 回复(4)
我看成程序员负责释放无用内存……😓
发表于 2023-03-31 17:26:38 回复(0)
A java有回收机制,JVM启动后会创建守护进程来检测是否需要是否释放对象内存 C D 允许程序员调用system.gc()提醒JVM进行full gc释放内存,但什么时候执行还是不知道的
发表于 2022-02-22 08:30:09 回复(0)
1.jvm一旦运行,会创建线程检测是否有对象内存需要释放 2.程序员不能回收内存,只能提醒系统回收内存 3.系统回收内存的时间是不确定的
发表于 2022-01-03 19:12:30 回复(0)
选B
A:错。程序员不必须创建一个线程来释放内存。可以运行GC的函数System.gc()来释放内存,但根据Java语言规范定义,该函数不保证JVM的垃圾收集器一定会执行;
B:对。对象的释放是有GC决定和执行的。在Java中,内存分配是由程序完成的,而内存的释放是有GC完成的。
C:错。由B选项的解析可知
D:错。垃圾回收机制很佛系,具体什么时候回收垃圾、释放对象不能确定。因为不同的JVM实现者可能使用不同的算法管理GC,JVM调用GC的策略也很多。所以有不确定性
发表于 2018-07-31 12:15:40 回复(0)
JVM一旦启动,就会创建一个守护线程来监测是否需要有对象内存被释放
内存回收程序不允许直接释放
不可以指定时间,System.gc(),只能提醒JVM可以进行一次Full GC,但是什么时候真正执行,还是不知道的


发表于 2022-08-24 19:12:01 回复(0)
在本类中使用,可以直接调用静态名,其他类,可以使用类名或者创建实例,静态类中,直接调用静态属名
发表于 2022-01-26 00:17:19 回复(0)
awesome
发表于 2021-03-05 01:29:39 回复(0)
无法指定时间
发表于 2020-07-09 08:09:08 回复(0)
<p>无</p><p><br></p><p><br></p>
发表于 2020-07-07 20:13:22 回复(0)
System.gc()只是提醒jvm,具体回不回收还要jvm决定
发表于 2020-03-03 13:41:21 回复(0)
java程序员根本不用考虑垃圾回收的问题,就可以提现出程序员不能直接直接释放内存的事实。java的GC回收是完全自动的,没有提供相关api手动回收,所有的内存分配和回收权限都在jvm,不在开发人员手里

没有绝对的强制垃圾回收的方法,不过可以这样去做:
1. 对于不再引用的对象,及时把它的引用赋为null。 obj = null;
2. 如果内存确实很紧张,调用System.gc() 方法来建议垃圾回收器开始回收垃圾。通知GC运行,但是Java语言规范并不保证GC一定会执行。

发表于 2020-02-15 17:33:43 回复(0)
无法直接释放内存
发表于 2019-08-04 17:46:59 回复(0)
https://blog.csdn.net/legendaryhaha/article/details/88606666
发表于 2019-03-16 21:48:32 回复(0)
是程序负 不是程序员😭😭😭😭😭
发表于 2018-12-06 17:15:15 回复(0)
内存回收是不能够直接进行释放的
也是不能够直接指定时间的
JVM一旦启动,就会创建一个守护线程来监测是否需要有对象内存被释放。
发表于 2018-10-10 17:15:18 回复(0)