java 垃圾回收题目_Java垃圾收集题目分析
【考題題干】關(guān)于垃圾收集的哪些敘述是對(duì)的?
A.垃圾收集將檢查并釋放不再使用的內(nèi)存。
B.垃圾收集允許程序開(kāi)發(fā)者明確指定并立即釋放該內(nèi)存。
C.程序開(kāi)發(fā)者必須自己創(chuàng)建一個(gè)線程進(jìn)行內(nèi)存釋放的工作。
D.垃圾收集能夠在期望的時(shí)間釋放被 Java 對(duì)象使用的內(nèi)存。
【試題分析】Java 語(yǔ)言將內(nèi)存分配和釋放的工組交給了自己,程序員不必做這些工作,它提供一個(gè)
系統(tǒng)級(jí)的線程跟蹤每個(gè)內(nèi)存的分配,在?JVM?的空閑處理中,垃圾收集線程將檢查和釋放不再使用的內(nèi)
存(即可以被釋放的內(nèi)存)。垃圾收集的過(guò)程在 Java 程序的生存期中是自動(dòng)的,不需要分配和釋放內(nèi)存,
也避免了內(nèi)存泄漏。可以調(diào)用 System.gc()方法建議 JVM 執(zhí)行垃圾收集以使得可被釋放的內(nèi)存能立即被
使用,當(dāng)此方法返回的時(shí)候, JVM 已經(jīng)做了最大的努力從被丟棄的對(duì)象上回收內(nèi)存空間。程序員不能指
定收集哪些內(nèi)存,一般而言也不用關(guān)心這個(gè)問(wèn)題,除非是程序的內(nèi)存消耗很大,特別是有很多臨時(shí)對(duì)象
時(shí)可以“建議“進(jìn)行垃圾收集以提高可用內(nèi)存。需要指出的是調(diào)用 System.gc()方法不能保證 JVM 立即
進(jìn)行垃圾收集,而只能是建議,因?yàn)槔占€程的優(yōu)先級(jí)很低(通常是最低的)。
JVM 垃圾收集器收集一個(gè)對(duì)象之前,一般要求程序調(diào)用適當(dāng)?shù)姆椒ㄡ尫刨Y源,但在沒(méi)有明確釋放資
源的情況下,Java 提供了缺省機(jī)制來(lái)終止化該對(duì)象心釋放資源,這個(gè)方法就是 finalize(? )。因此選項(xiàng) A
是正確的。
垃圾收集器不可以被強(qiáng)制執(zhí)行,但程序員可以通過(guò)調(diào)用 System. gc 方法來(lái)建議執(zhí)行垃圾收集器。因
此選項(xiàng) B 是錯(cuò)誤的。
Java 的垃圾回收機(jī)制是為所有 Java?應(yīng)用進(jìn)程服務(wù)的,而不是為某個(gè)特定的進(jìn)程服務(wù)的。因此,任何
一個(gè)進(jìn)程都沒(méi)有權(quán)利去命令垃圾回收機(jī)制做什么、怎么做或做多少。因此選項(xiàng) C 是錯(cuò)誤的。
Java 運(yùn)行時(shí)系統(tǒng)只在需要的時(shí)候才使用垃圾收集。因此用戶無(wú)法知道垃圾回收發(fā)生的精確時(shí)間。同
樣沒(méi)有辦法預(yù)知在一組均符合垃圾收集器收集標(biāo)準(zhǔn)的對(duì)象中,哪一個(gè)會(huì)被首先收集。 因此選項(xiàng) D 是錯(cuò)誤
的。
【參考答案】A
總結(jié)
以上是生活随笔為你收集整理的java 垃圾回收题目_Java垃圾收集题目分析的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 幸福都是奋斗出来的
- 下一篇: 设计模式之状态模式(State)