I just completed SCJP 1.4 with 93%. Here is a bit of advice and my study sheet.
1. K&B corresponds closely to the exam, but if you need some structure to remember the details, Mughal helps (but it goes beyond SCJP scope).
2. There is enough time to finish and check, but not that much. The last set of preliminary screens come out of your time so be careful, I started the first question with 2 minutes gone. I don't remember whichs screens they were but maybe someone else can post this.
3. The "fails to compile" questions are more numerous and more clever than on any mock exam, but the Sun $75 mock set comes close. It's easy to suspect a syntax error on an easy question. You can get fooled by nice hard questions with subtle errors. I suspect my missed questions were in this category.
4. The thread questions go way beyond the API rules. Write or study some code until you really understand threads.
5. Unlike school tests, the first random question can be a difficult time burner. Don't panic - they're not all that hard.
6. I used the mock exams listed in JavaRanch Q&A and the Sun $75 mocks.
7. Asking questions in JavaRanch helps. Answering questions in JavaRanch helps much more.
8. Here is my study sheet. It is in no particular order and may have errors. I added a note every time I had trouble with a question. Build your own or use this or both.
Implicit narrowing cast includes finals and expressions on rhs but not longs Identifiers include currency and _ but not # Static methods including main can�t access instance members Check for random capitalization Check for uninitialized local variables Strings can include � as well as \� /d /dd /ddd are octal arrays have length, Strings have length() arrays implement Cloneable final variables can�t be volatile constructors can�t be synchronized class names can�t be in their package names abstract methods can�t be private local variables can only be final, not anything else throws in superclass constructor requires throws in subclass constructor watch for NOT in questions methods calls via superclass ref requires that signature in superclass wait() must be within synchronized code AssertionError has lots of constructors Can�t add primitives to collections API names are not keywords Float prints as xx.x New always makes a new object NaN == NaN Math.round(x) = + .5 then floor() and then cast the result to int or long ...depending on the datatype of x [corrected] main() can�t access instance members check for static variables learn escape codes hashcodes can vary between runs x.compareTo(y) x<y = -1 x>y = +1 unlabelled break applies to innermost enclosing switch, while, do, or for statement of the immediately enclosing method or initializer block continue applies to while, do, or for statement watch for using for index past scope of for read ALL the answers throw statement can cause an unreachable statement class methods overriding interface methods must say �public� even nested interfaces only have public fields, methods, classes, and interfaces code in catch block can�t see try-local variables source code file name must match public or other class name super(�) cannot refer to this instance variables or methods byte x; m(x=5); same as byte x = 5; m(x); local variable can hide member field check for missing ; in anonymous classes local classes can access nonfinal fields String methods require = StringBuffer methods do not require = Arrays use length Strings use length() Math.round(NaN) = 0 Math.abs(Integer.MIN_VALUE) = Integer.MIN_VALUE
[ February 12, 2005: Message edited by: Mike Gershman ]
I thought you were already SCJP 1.4 because the way you explained the answers in the forum so nicely..
One more thing I would like to modify in your study sheet
Math.round = + .5 then floor()
Math.round = + .5 then floor() and then cast the result to int or long depending on the datatype of the left hand side variable
So what's next ? [ February 12, 2005: Message edited by: Jay Pawar ]
Cheers,<br />Jay<br /> <br />(SCJP 1.4)<br />Heights of great men were not achieved in one day, they were toiling day and night while their companions slept.
Joined: Mar 13, 2004
So what's next ?
I figure SCWCD is the next logical certification.
As for employment, I'm still hoping to find a college teaching job somewhere in the US - can't let my fresh MS-CS diploma go to waste.
Failing that, I'm starting to see a few US entry-level Java posts, but no responses as yet. I think they don't believe me when I tell them I'm perfectly happy with a newbie's salary despite my time in the field.
Meanwhile, it's "head first" into Servlets & JSP for me.
Thanks for the correction, I'll put it in now. I think the int or long return type depends solely on the type of the argument of Math.round - float or double.
Anyone else with corrections, please speak up. [ February 12, 2005: Message edited by: Mike Gershman ]
Mike, I would recommend that you fork out to take the SCJP 1.5 Beta since it has been extended until March 6th. It's a real eye opener... Thanks for your interest in, and many excellent contributions to, the SCJP forum.