单选题10. public Object m() { 11. Object o = new Float(3.14F); 12. Object [] oa = new Object[1]; 13. oa[0] = o; 14. o = null; 15. return oa[0]; 16. } When is the Float object, created in line 11, eligible for garbage collection?()AJust after line 13.BJust af

题目
单选题
10. public Object m() { 11. Object o = new Float(3.14F); 12. Object [] oa = new Object[1]; 13. oa[0] = o; 14. o = null; 15. return oa[0]; 16. } When is the Float object, created in line 11, eligible for garbage collection?()
A

 Just after line 13.

B

 Just after line 14.

C

 Never in this method.

D

 Just after line 15 (that is, as the method returns).


相似考题
参考答案和解析
正确答案: C
解析: The correct answer to this question is C. The object is never garbage collected simply because the method returns it. Think about it, the message that receives the object might depend on it so it must be sure that the object received by the method wont be garbage collected. Only in this situation a local object  wont be eligible for garbage collection. Otherwise, a local object is eligible for garbage collection as soon as the method ends.