wood burning stoves
The moose likes Programmer Certification (SCJP/OCPJP) and the fly likes another GC question help Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Certification » Programmer Certification (SCJP/OCPJP)
Bookmark "another GC question help" Watch "another GC question help" New topic

another GC question help

wei liu
Ranch Hand

Joined: Nov 19, 2008
Posts: 35

hi guys the quest below is on SCJP book Page 284 question 11;

the question is until the code to do stuff() how many objects are eligable for GC

answer is 1

can some one tell me which is the one object to be GC and how to work it out.

thanks very much.

ps: my understance is there will be only 5 objects created which are a1,b1, a2,b2. and alpha static instance, and the instance field in Alpha "Beta b2" will just inital to null when Alpha object is created. a1.b2 and a2.b2 are just references to object b1 and b2 respectively, therefore when a1 assign to null only object a1 is eligable to GC, am I correct?

SCJP 1.6 in 2010
SCWCD5 in 2011
Wouter Oet
Saloon Keeper

Joined: Oct 25, 2008
Posts: 2700

Try to make a drawing for yourself with on one side the objects, the other side the references and in the middle arrows to connect the references with the objects. Then walk through the code and change the arrows. Once you're done you'll know which objects are eligible. But remember that Alpha.b2 is static.

"Any fool can write code that a computer can understand. Good programmers write code that humans can understand." --- Martin Fowler
Please correct my English.
Ankit Garg

Joined: Aug 03, 2008
Posts: 9462

This question has been discussed a lot of times before. See these threads


SCJP 6 | SCWCD 5 | Javaranch SCJP FAQ | SCWCD Links
jQuery in Action, 3rd edition
subject: another GC question help
It's not a secret anymore!