Hi, I just registered in the JavaRanch today but I wrote my exam last week. I passed and it was partly due to my finding this website. I already had been working towards certification and had Bruce Eckel's "Thinking in Java" and Mughal and Ramussen's "A Programmer's Guide to Java SCJP Certification". While Eckel's book is a well regarded book on Java it is not really geared towards the exam but Java in general. The guide by Mughal and Ramussen is an excellent resource and designed to cement Java fundamentals and understanding Java as well as being specifically geared towards the exam. If it has I weakness I would say it is in the threading area. This is not covered too much on the exam but I did notice it was an area of personal weakness when going through the following Mock exam by Cooray.
That mock exam mentioned in this forum gave me a good heads up on some of the exam questions and the exam interface. ExamLab for SCJP 6.0
I found the most useful mock exam's to be Sun's practice exam(purchased), the exam in the Guide http://www.ii.uib.no/~khalid/pgjc/jcbook/engine.html, ExamLab for SCJP 6.0 and finally Marcus Greens exams even though they are a little dated. Many of the others had errors in them and I had to abandon using them due to unsatisfactory levels of perfection.
Oh I forgot to mention the Java Roundup here on JavaRanch. That is what drew me here and it is an awesome primer for Java basics as well as a bit of fun.
Thanks to all the forum posts and great advice here. I am very pleased I had a successful exam and it is why I came back to pursue the SCJD.
One final note on Khalid and Rasmussen's mock exam. It has some errors in it. The books hard copy did also but it was much easier to deal with and I edited the incorrect words in the questions. It is better to use the hard copy to confirm your answers. The electronic version has approximately 5 errors. I did not audit it exactly. Some of the errors are not in the answer but in the question. For example "select 2 answers" but it is 3 or "select 3" and it is 2. One question though is definitely incorrect as in the book it is 2 selections and in the electronic it is a radial button selection which is one and only one. I did not perform an audit which I documented so I do not have particulars just noted it as I used them. I did however highlight the questions which I noticed as I went through the hard copy mock exam in my copy. I also noticed a few errors in the book itself but it is still an awesome resource and without doing the exercises myself I would not have found the errors. As the text states to learn Java you need to work with it (I am paraphrasing). I found this book to be the best Java learning book hands down. I read Eckel's first and it is a good book but Khalid and Rasmussen's Java SCJP guide really drove the fundamentals home in an easy, methodical and well structured manner.
That almost seems funny" Learning Java is easy". At least Khalid and Rasmussen made it easier and I enjoyed this book immensely.
My score in exam lab was over 80%. Please note there are a few errors in the exam lab exam. However the value of this tool is it gives you a reasonable facsimile of the actual exam and the threading class questions will be of great value not only on the exam but for thread programming in general. The sun exam also emulates the actual exam and content well. Even though this exam costs a few dollars to purchase it has a lot of questions very similar to the exact exam style. If you see a question in their exam a similar question will likely be on the real exam. Look at the question from a logical point of view and then concentrate on the whole area. For example: If there is a question about StringBuffer then you should be familiar with the StringBuffer class's constructors and methods. If you do not wish to purchase Sun's practice exam the exam guidelines are a good enough guide on what to study Sun SCJP certification page I purchased the exam because I figured it would give me an idea on what the real exam would be like. The exam was difficult in spots and easy in others.
As far as the API contents you need to know, it is the IO classes and the collection classes. Also you need to know the Thread and Runnable classes. You also need to fully understand how to set the classpath for JAR files, set the System properties, and compile files(Remember the exam covers Unix paths). All the mock exams cover fundamentals, OO concepts, flow control, Declarations intialization and scoping. This should not be a problem for most of you. So it really boils down to which API's to memorize and setting system properties, compiling and running programs from the command line and of course threading. The exam does have questions on Garbage collection too which is in most mock exams as well.
The best overall material was "A Programmer's Guide to Java SCJP Certification". The sun exam guidelines Sun SCJP certification page are the next best thing to concentrate on for API and exam content.