Saturday, 23 November 2013

Oracle Java Certification Exam Preparation (for OCPJP 7 Exam)

Why Oracle Java Certification?  

Let us start with the question - why get certified? 

The reason is to differentiate yourself. The key to getting a job, hike, or promotion is to show that you deserve it! 

Getting certified is one of the means to show that you have relevant knowledge and skills:
  • Show that you have some document proof that you have relevant skills or knowledge
  • Show that you are different from others (competing with you) that you have some specialized skills or knowledge 
Getting certified also has other benefits as well: 
  • Preparing for a certification exam gives you focus on learning relevant and important topics; the certification exam date gives you a deadline so you will take learning seriously 
  • The process of preparing for the exam and actually passing the exam gives you confidence necessary for getting a job or asking for a promotion or a raise
Now you may ask, why Java certification? 
  • One obvious reason is that Java is one of the most popular programming languages on this planet. As on 17th March 2013, according to TIOBE index - the language popularity index most people refer to - listed Java as the most popular language in the world ahead of languages like C, Objective-C, C++, and C#. This popularity of Java translates to the need for more Java programmers in the IT industry. 
  • Java certifications are one of the most popular IT certifications, so potential employers or your managers will recognize this certification.
  • There is always need for high-quality Java developers and having this certification shows that you are one of those qualified Java developers 
Next, we’ll briefly discuss about the Oracle’s certification path. At a very high-level, there are four levels of certifications: Associate, Professional, Expert, and Master levels. 
  • Oracle Certified Associate: This certification shows that you have fundamental skills necessary for an IT career; it provides a strong foundation for further exams.
  • Oracle Certified Professional: This certification shows that you have professional skills and technical expertise to develop enterprise software. 
  • Oracle Certified Expert: This certification shows that you have specialized levels of skills and knowledge.
  • Oracle Certified Master: This certification shows that you have mastery or expert level of skills and knowledge.      
There are three Oracle Java exams for Java SE 7 at beginner to intermediate level.
  • Java SE 7 Programmer I: The is a beginner level exam - if you pass it you get Oracle Certified Associate Java SE 7 Programmer (OCAJP 7) certification. There are no pre-requisites for taking this exam. 
  • Java SE 7 Programmer II and Upgrade to Java SE 7 Programmer: These two are intermediate level exams - if you pass either of these exams, you will get Oracle Certified  Professional, Java SE 7 Programmer (OCPJP 7) certification. If you have older Java certifications such as SCJP 5, then you can go for Upgrade to Java SE 7 Programmer; otherwise, you need to take Java SE 7 Programmer II exam. For Java SE 7 Programmer II exam, the prerequisite is that you should have passed the OCAJP 7 exam. 
Oracle Certified Professional Java Programmer 7 (OCPJP 7) Overview

Exam topics

There are 12 exam topics for Java SE 7 Programmer II certification - 
  • Java Class Design
  • Advanced Class Design
  • Object-Oriented Design Principles
  • Generics and Collections
  • String Processing
  • Exceptions and Assertions
  • Java I/O Fundamentals
  • Java File I/O (NIO.2)
  • Building Database Applications with JDBC
  • Threads
  • Concurrency
  • Localization
However, the Upgrade to Java SE 7 Programmer has only six exam topics: 
  • Language Enhancements
  • Design Patterns
  • Java File I/O (NIO.2)
  • Building Database Applications with JDBC
  • Concurrency
  • Localization
In other words, the Upgrade to Java SE 7 Programmer assumes that you know topics such as class design because you have passed one of the earlier exams. So, the focus of the Upgrade exam is only on additional topics or Java 7 topics.  

Getting familiar with OCPJP 7 exam 

The exam has only multiple-choice questions. You will get 4 to 7 options for each question; but most questions will have four options. Note that many questions will have more than one answer to be selected - the question will clearly tell you how many options you need to select. 

The exam questions intend to test your ability to solve real-world problems. You can expect most questions to be programming-based questions. For example, given a program or code segment, the question could be to predict the behavior by selecting the expected output from the given list of options. You will also get a few conceptual questions. These questions will test your knowledge and will not have any programs in it. Examples: What are different kinds of drivers in JDBC? What are different kinds of liveness problems with threads? 

Most questions will check your knowledge of language features and their usage. They will test if you understand language features and can apply them in practical situations. But note that most questions will not be on obvious aspects of Java language features. Rather, the questions will be on nitty-gritty details or corner cases, or unusual aspects of the language. For example, you don’t just need to understand the generics feature in Java but also need to understand problems due to type-erasure in generics. 

Many questions will test your knowledge of library features and their usage. They will test if you are familiar with Java APIs and know how to use them in practical situations. You can be sure that questions will be on nitty-gritty details or corner cases, or unusual aspects of the library. For example: What does the remove() method of Deque do? (Answer: It removes the front or first element from the underlying deque instance - not the back or last element).

To summarize, the exam tests your understanding of the Java language and library and your ability to apply it for problem solving. However, note that it does not test your memory skills. Still there are few topics where you may need to remember key things. Some examples: 
  • Letters used for creating custom date and time formats (i.e., "string patterns") for use with SimpleDateFormat class
  • Characters used for forming pattern strings in regular expressions
  • Format specifiers and their meaning for use in format() method in String and in printf()
If you have done programming with time formats, regular expressions, format specifiers etc. you’ll know them; but if you are relatively new to these topics, then you need to refresh them before appearing for the exam. 

Also note that exam questions need not be exactly from the exam objectives! Any topics related to the exam objectives can come in the exam. For example, serialization and use of transient keyword is not explicitly mentioned in the OCPJP exam topic. But this topic can come in the actual exam because it is related to reading and writing streams, and one of the streams is ObjectStreams and it relates to serialization!

How to Prepare for the Exam 

Now let us discuss about preparing for the exam. 

The best way to prepare for the exam is to write lots and lots of small programs and learn from your mistakes! If possible, try taking up some small toy projects in the topics you’re new or not familiar with. This is especially important if you don’t code in Java in your regular job. 

However, it is also important to read and learn more about the language features and the library. There are some excellent resources out there in the internet freely available for you to read. 
Some tips for exam preparation 
  • When preparing for the exam, focus especially on the new features introduced in Java 7.   
  • Take a close look at the exam objectives and grade yourself from, say 1 to 10, with 10 being the highest. Prepare all the topics for which you've rated yourself as 8 or below.
  • Plan for taking your exam well in advance: look out for scheduling the exam when you’ll be free for at least a few weeks for exam preparation; avoid last minute rush to prepare for the exam. 
How to register for the exam?

You have three options:
  • You can register and pay at the Pearson VUE website (this is the option most exam takers choose).  
  • You can buy exam voucher from Oracle and then register yourself in Pearson VUE website. 
  • You can register and pay in the Oracle Testing Center (OTC). 
Before we end 

Do checkout our OCPJP 7 book which is the only book available in the market for exam preparation. 

That’s all, and wishing you all the best for cracking the OCPJP 7 exam with ease. 


  1. nice post.this post is very helpful in the exams.thanks to sharing this post.more info

  2. The message you have posted in this blog is good and I had got impressed by the way you presented it. The blog colorization is very good and the way you designed the blog is very interesting..
    legal translator