Yayyyy ! Finally i get to post this - Passed OCA 1Z0-808 with 81% !
Prep Material - OCA: Oracle Certified Associate Java SE 8 Programmer I Study Guide: Exam 1Z0-808 by Jeanne Boyarsky and Scott Selikoff
Hours Put - Around 1.5 months last September-October. I have also studied book by Kathy Sierra long before (5 years ago) to clear interviews.
I have strong work experience in Java; However, a lot of concepts that is required to clear the test are not very obvious while writing code. Thank you to eclipse (sarcasm alert). But many a times in the hurry to complete the code, we just follow what the tool suggests blindly. Thank you eclipse (heartfelt this time ). So please put enough hours. Take your time !
My story - I got a voucher last September but got so busy with work after October that i could not book a date for the test as I did not have time to study after work. Last week I realized that my voucher is going to expire on Feb-28th (tomorrow). So booked a date to take the test (Feb-26) and quickly revised all the important topics such as Overriding, Overloading, Order of Initialization, type casting, String, StringBuilder etc. I had sincerely created notes of each concept (examples given below) while i was studying from the book. The notes came very handy during revision as it was impossible for me to read through the book again within a short period of time.
The book has small but very important concepts hiding between so much text / in between the lines !
I wrote small programs to practically confirm the concepts mentioned in the book. One of the things that i found through my small programs was -
String a = null;
a += " Hello !"
output - null Hello !
After some search in google is found that a+=b is equivalent to new StringBuilder().append(a).append(b).toString(); !!!
If you are giving this certification to learn more about Java and not just pass the test - these small things will make you happy rather than overwhelm you or cause worry !
Something that greatly helped me was the source code of various built-in classes of java that i found in grepcode.
For ex- its important to see the toString() implementation of StringBuffer. It returns a new String(...) object. So any comparison with a String literal will always return false.
Although this might seem like a big task, after all there are so many classes and so many methods. But if you think about it, the book clearly lists out the important methods for the exam; We just need to look at them. This exercise gave me a lot of confidence.
Score - 81 %
During the exam - For all the questions that got me confused - I was thinking, why did I not think about it/miss it while creating notes.
Mood - very happy !
I have not been very active in the forum due to my poor time management skills but have always been a silent stalker (not proud of it) and I am very thankful to all the people who put in their time to explain me/us little things that help us learn ! Thank you to all such people in coderanch !