This week's book giveaway is in the General Computing forum. We're giving away four copies of Arduino in Action and have Martin Evans, Joshua Noble, and Jordan Hochenbaum on-line! See this thread for details.
I took the exam on Thursday and I passed with 81%. Not a great score, not a terrible score (at least in my opinion). On my test, I received a lot of questions on Thread. It was mainly on implementing Runnable and extending Thread. I was surprised I had only one question on wait() & notify(). My main weakness, to my surprise, was Declarations and Access Control. Doing the J@Whiz mock exams and others, I always thought that would be my strong point. I was surprised to receive 62% on Declarations and Access Control. If I was to take the exam over again, I would focus on Inner Classes. The questions on Inner Classes were basic ones like which modifiers could be in front of which type of inner class (anonymous, etc). I had several questions also on flow control that seem like what several other "ranch hands" have experienced. The flow control questions tend to be questions on IQ and patience rather than knowledge. For example, you would be given two or three variables and they would be incremented/decremented in a mixture of breaks and continues in several loops. As long as you use the scratch paper, it'll be ok... those were the questions I spent the longest time on. Garbage Collection questions were relatively light, similar to many mock exams, it'll ask at what line is the variable x eligible for garbage collection. A lot of questions on language fundamentals, operators and assignments, overloading, etc, which is to be expected since those objectives are fundamental to Java. I was expecting the questions on AWT layouts to be harsh but was surprised at the level of depth. It didn't ask at all about which GridBag Constaint did what, it just seem to expect the candidate to know what the default layouts are, how they look like, the treatment of preferred height & width. In contrast, the listeners were asked in greater detail like what KeyTyped vs. KeyPressed means. Java.Lang was barely touched, I believe the only question I got was about how to round the number, and obviously I choose Math.round(). Java.Util also appeared superficial, it just asked which classes implemented which interface. Java.IO wasn't as bad as I expected, that section was easily done by process of elimination, just be sure to recognize the constructors. Oh and all my questions were multiple-choice, no fill-in. I couldn't of done this test without these great resources: JavaRanch (the game was awesome!), jchq's tutorial, j@whiz, and javacaps. I knew I could of got a better score if I tried JQ+ and JTips, but my school quarter just started so I decided to just pass and forget the higher score. I also read Mughal and some of RHE. I found Mughal to be very complete with his explanations but sometimes its information overload. RHE tended to be more consise. So whenever I didn't understand something from Mughal or need more information I read RHE. In particular: IO & Inner Classes. The pictures in RHE for IO were very useful. And did I mention how good the JavaRanch game was? It really helped in the language fundamentals. In all I spent about 3 weeks doing this. First week, I read the Mughal book, second week I did some online mock exams, online tutorials, and RHE, third week I did J@Whiz.