Fisher
I would say the correct answers are B and D.
A is wrong because the GC is a low level
thread and you cant say for sure when it'll run.
C is wrong because you can still run out of memory either through poor programming or just by using too many resourses in you code.
E is wrong because there is no way to explicitly destroy an object and release it memory.
B is correct because there is no set time the GC runs so you shouldn't count on specific behavior in your code.
D is correct (if I read it correctly) because, as the programmer you can indicate that an object is no longer going to used by setting all references to it to null.
------------------
Dave
Sun Certified Programmer for the Java� 2 Platform