The purpose of this document is to provide a basis for revising for the Sun Certified Programmer examinations, not to teach the Java language or the topics required for the exam. It is designed to collect all the essential information you need to retain, in one place, and is designed for someone who has already finished their own study and is about to take the exam.
This version is written according to the objectives of the "Sun Certified Programmer For Java™ 2 Platform 1.4" exam. For those taking the 1.2 exam, the objectives no longer required for 1.4 have been retained towards the end of this document. The sections have "1.2 Exam Only" at the start of their titles. I would recommend doing the 1.4 exam instead, as it is more current and the only major new subject is assertions.
Aside: There is no 1.3 exam, as such. The 1.1 exam exam was replaced by a Java2 exam, which at the time seemed like it would suffice for all Java2 releases. However in September 2002 Sun released seperate 1.2 and 1.4 exams. The 1.2 syllabus is for 1.2 and 1.3.
Thank you to everyone who has emailed me with compliments and/or corrections for previous versions of this document, it is appreciated. On the other hand, if you have questions on the exam or Java, I am afraid I do not have time to answer all of these, so please try either the certification discussion groups on the web, or the Java newsgroups.
Having obtained my certification, I have neither time or reason to maintain this document in the future and keep it current with changes in the exam. Rather than let it stagnate, I have decided to release it as a resource to the Java certification community under the Free Documentation License. This will allow others to change, correct, expand and update it. The accompanying XML file has more information on how to do this.
If you are just starting to prepare for the exam, then I recommend the following steps:
Suns own certification site, has FAQs, objectives and sample questions: http://suned.sun.com/US/certification/java/java_progj2se.html
Marcus Greens Site has exams, FAQs, tutorials:http://www.jchq.net/
A discussion forum: http://groups.yahoo.com/group/javacertstudy/
The JavaRanch, has a nice rules exam, and lots of cows: http://www.javaranch.com/
More links: http://directory.google.com/Top/Computers/Programming/Languages/Java/Resources/Certification/
Here are just a few comments on the exam itself. Firstly, time should not be a problem, as you should have time to answer all the questions, review them, and possibly be able to leave early. It will really be an issue of whether you know/understand what is required. That said, as with any exam, do not get bogged down in any one question, mark it and come back to it later if it is taking too long.
Generally, the questions in the real exam are a lot better than the mock exams which are going around: They less ambiguously worded, the sample code is usually short, and the slant of the questions is towards whether you understand the principles rather than whether you have memorized a lot of methods etc. The majority of the questions are on the core language syntax rather than its APIs. Of course, you do need to be familiar with the APIs mentioned in the objectives to get a pass mark.
This document is structured around the objectives for the exams. For each objective, I have attempted to list all the bare-bones information you may need to remember for the exam.
The "1.2 Exam Only" sections are based on a subset of the 1.1 objectives with additions where needed, as they were taken from an older version of this document. This may seem strange but they provide good information for the 1.2 exam. At the time, the objectives for the Java 1.1 exam were more detailed and descriptive than those for the Java 2 exam, but the exams were very similar. I took the 1.2 exam (it was called just "Sun Certified Programmer For Java™ 2 Platform" at the time) in 1999, and released the first version of this document afterwards.
©1999, 2000, 2002 Dylan Walsh.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being the disclaimer, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".