Now,who created the compiler? Us,human beings.The people who developed the language created certain rules based on OO principles.They documented them in the java language specifications.They said,for example, no matter in which platform you use the language it would obey certain rules and produce consistant output.All these conditions and outcomes are documented in JLS.
This is the same with all the standard languages-C,C++,VB etc.
What does the compiler do? It just follows these rules of the language and produces consistant output.If I know the concept, for example of
polymorphism,then I can tell you the correct method in the correct class the compiler is going to bind in any given circumstance.
Imagine you know your maths well and know that 10 plus 15 adds to 25.To save time they have invented the calculator programmed to produce the correct output for all the mathematical calculations of the world. I show you a calculator simulated on the screen and say,"
If I pressed 1,0,+,1,5 and = then what is the answer given by the calculator?".
If I know my mathematics concepts well I would give the correct answer and I don't have to worry how the calculator works it out, because if the calculator is correctly programmed then it would follow the correct concepts.
IMHO what you are being examined in SCJP is not your ability to guess what compiler does but based on your knowledge of the concepts trace out the path the compiler would take in the program to produce a correct and consistant output.