This book is intended for those taking either the 1Z0-808 or 1Z0-809 Oracle Java Programmer exams as well as those who want to test their knowledge of Java 8. If you are new to Java 8, we strongly recommend you start with a study guide to learn all of the facets of the language and come back to this book once you are thinking of taking the exam.
We recommend the best-selling OCA Oracle Certified Associate Java SE 8 Programmer I Study Guide and OCP Oracle Certified Professional Java SE 8 Programmer II Study Guide, which we happen to be the authors of, to start in your studies. Regardless of which study guide you are using to prepare, you can use this book to hone your skills, since it is based on topics on the actual exams.
Unlike the questions in our study guides, which are designed to be harder than the real exam, the questions in this book mirror the exam format. All the questions in this book tell you how many answers are correct. They will say “Choose two” or “Choose three” if more than one answer is correct.
Throughout this book, we use the same set of assumptions that Oracle uses for its exams. In many cases, these assumptions are actually accounting for unintended omissions or type-setting errors that Oracle is directing you to ignore when solving a question focused on a particular exam objective. The assumptions are listed at http://education.oracle.com and listed here for your convenience:
The first step on the road to a Java certification is the Oracle Certified Associate 1Z0-808 (OCA 8) exam. The material includes the basic day-to-day tools every Java developer should be familiar with. Once you have completed that exam, you can move on to the more difficult Oracle Certified Professional 1Z0-809 (OCP 8) exam. This includes every topic on the first exam, along with many additional libraries and APIs that you may not even be familiar with in your career, such as the Concurrency and NIO.2 APIs.
If you already hold a Java certification, you are eligible for an upgrade exam. Table I.1 and Figure I.1 show the various pathways to the OCP 8 certification title. This book will help you prepare for all four of the exams listed in the table.
TABLE I.1 Exams this book covers
Exam Code | Name | Who should take |
1Z0–808 | Java Programmer I | Everyone can take this exam. |
1Z0–809 | Java Programmer II | Those who pass the OCA 8 exam |
1Z0–810 | Upgrade Java SE 7 to Java SE 8 OCP Programmer | Holders of an OCP 7 certification |
1Z0–813 | Upgrade to Java SE 8 OCP (Java SE 6 and all prior versions) | Holders of any of the following certifications:
Any older SCJP certs |
FIGURE I.1 Exam prerequisites
For the OCA exam, we recommend a study plan that uses our OCA Oracle Certified Associated Java SE 8 Programmer I Study Guide along with Chapters 1 through 10 of this book. For the OCP exam, we recommend a study plan that uses our OCP Oracle Certified Professional Java SE 8 Programmer II Study Guide along with Chapters 11 through 23 of this book. That’s right, this book is actually two books in one! It assists you for both the OCA and OCP exams.
There are some subtle differences in how you should prepare if you are taking one of the upgrade exams. The good news is that if you currently hold a Java 7 OCP certification and are taking the 1Z0-810 upgrade exam, this book is all you need. While the exam contains a stronger focus on changes between Java 7 and Java 8, there aren’t any new topics not covered with the existing OCP 7 material. This means you have the same study plan as those taking the OCP for the first time.
On the other hand, if you are taking the 1Z0-813 upgrade exam and hold a Sun Certified Java Programmer (SCJP) or Oracle Certified Java Programmer (OCJP) title, then you will need additional material. This upgrade inexplicably contains material that was in the Java 7 OCP exam but removed from the Java 8 version, such as ReentrantLock and WatchService. For that, we have no explanation, although this does make the 1Z0-813 arguably the most difficult of the three OCP exams because it requires knowing everything from multiple versions of Java.
Have no fear! When we wrote our OCP Oracle Certified Professional Java SE 8 Programmer II Study Guide, we added a special 50-page appendix, Appendix C, “Upgrading from Java 6 or Earlier,” which covers the topics solely on the 1Z0-813 exam in detail. If you are taking the 1Z0-813 exam, then after completing your studies with this book, you should consult our appendix in our OCP book or a Java 7 OCP study guide so that you are prepared for all of the objectives.
If you already hold a Java certification, you are not required to take an upgrade exam. Some developers find it more straightforward to start with the easier 1Z0-808 OCA exam and then take the more challenging 1Z0-809 OCP exam. If you have no experience with Java 8 or just want more practice with it, taking the OCA exam followed by the OCP exam could be a better, albeit more expensive, learning experience than taking a single upgrade exam.
Also remember, if you do hold an old Java title and want to take an upgrade exam, you will need to prove it before you will be granted the OCP 8 title, even if you pass the upgrade exam. This requires registering your older certification with Oracle’s CertView system. We’ve heard feedback from some readers who had to search through old binders and emails from over a decade ago to submit the proper documentation that allows them to be granted the OCP 8 title.
Finally, if you are new to Java certification, it is traditional to take the exams in order, with the OCA exam followed by the OCP exam. However, this is a not strict requirement. It is possible, although quite unorthodox, to take the harder OCP exam first and then circle back to take the OCA exam. In this case, you’ll be granted both OCA and OCP titles upon completion of the OCA exam. While we don’t recommend this strategy, Oracle does allow it.
If you are looking to take the OCA 8 exam (1Z0-808), then Chapters 1 through 10 of this book are for you. And once you’ve passed with flying colors, you’ll have the OCP material handy in case you decide to take the exam.
If you are looking to take the OCP 8 exam (1Z0-809) or OCP 8 upgrade exam (1Z0-810), then Chapters 1 through 23 of this book are for you. While Chapters 1 through 10 are primarily focused on the OCA exam, the OCP exam is cumulative. We recommend you start reviewing the OCA Chapters (1–10) to make sure you have a solid foundation and then move on to the OCP Chapters (11–23) when you are ready.
As mentioned earlier, if you are looking to take the OCP 8 upgrade exam (1Z0-813), this book will still help for the vast majority of topics. You will need to supplement this book with a Java 7 study guide or use Appendix C in our OCP book, which focuses on the precise topics on the 1Z0-813 exam that you need to know.
Regardless of which exam you plan to take, make sure to always keep your study guide handy. This book is about honing your knowledge of Java 8, while your study guide is about building it.
For this book, we decided to write two books in one, divided into Parts I and II. Part I includes Chapters 1 through 10, with nine objective-based chapters for each of the OCA exam objective sets followed by a simulated OCA practice exam. Part II encompasses Chapters 11 through 23, with 12 objective-based chapters for each of the OCP exam objective sets followed by a simulated OCP practice exam.
There are some subtle differences between the objective-based chapters and practice exam chapters that you should be aware of while reading this book.
We designed the structure and style of each question in the objective-based chapters to reflect a more positive learning experience, allowing you to spend less time on each question but covering a broader level of material. For example, you may see two questions that look similar within a chapter but contain a subtle difference that has drastic implications on whether or not the code compiles, or what output it produces.
Each question in the objective-based chapters has exactly four options with only one correct answer. Just like the review questions in our study guide, these questions are designed so that you can answer them many times. While these questions may be easier than exam questions, they will reinforce concepts if you keep taking them on a topic you don’t feel strongly on.
In our study guides, we often group related topics into chapters. For example, if/then statements and loops, which are in separate Oracle objective sets, were presented in a single chapter on Operators and Statements in our OCA book. In this book, we decided to design our chapters solely around Oracle’s objectives so you can strengthen your skills. While you don’t need to read an entire study guide before using an objective-based chapter in this book, you do need to study the relevant objectives. Tables I.2 and I.3 show what chapters you need to have read in our study guides as a minimum before practicing with the questions in this book.
TABLE I.2 Reference in OCA study guide
Chapter in This Book | Objectives | OCA Study Guide Chapters |
1 | Java Basics | 1 |
2 | Working with Java Data Types | 1, 3 |
3 | Using Operators and Decision Constructs | 2, 3 |
4 | Creating and Using Arrays | 3 |
5 | Using Loop Constructs | 2 |
6 | Working with Methods and Encapsulation | 4 |
7 | Working with Inheritance | 5 |
8 | Handling Exceptions | 6 |
9 | Working with Selected Classes from the Java API | 1, 3, 4 |
TABLE I.3 Reference in OCP study guide
Chapter in This Book | Objectives | OCP Study Guide Chapters |
11 | Java Class Design | 1, 2 |
12 | Advanced Java Class Design | 1, 2, 3 |
13 | Generics and Collections | 3, 4 |
14 | Lambda Built-in Functional Interfaces | 2, 4 |
15 | Java Stream API | 3, 4 |
16 | Exceptions and Assertions | 6 |
17 | Use Java SE 8 Date/Time API | 5 |
18 | Java I/O Fundamentals | 8 |
19 | Java File I/O (NIO.2) | 9 |
20 | Java Concurrency | 7 |
21 | Building Database Applications with JDBC | 10 |
22 | Localization | 5 |
This book contains two full-length practice exam chapters, with Chapter 10 being an 80-question OCA practice exam and Chapter 23 being an 85-question OCP practice exam. The questions in these two chapters are quite different from the objective-based chapters in a number of important ways. These practice exam questions tend to be harder because they are designed to test your cumulative knowledge rather than reinforcing your existing skill set.
While all of the objective-based chapters had four options with only one correct answer, these questions have up to six options, with up to three correct answer choices. Based on feedback from our first two books, we do indicate exactly how many answers are correct in the practice exam chapters, as is done on the real exam. Some readers thought the lack of knowing the correct number of answers made the questions too challenging for studying.
Both practice exam chapters are designed to be taken within 150 minutes and have a passing score of 65 percent. Remember not to take the practice exam until you feel ready. There are only so many practice exams available, so you don’t want to waste a fresh attempt.
While an objective-based chapter can be completed over the course of a few days, the practice exam chapters were designed to be completed in one sitting. You should try simulating the exam experience as much as possible. This means setting aside two and a half hours, grabbing a whiteboard or scrap paper, and answering every question even if you aren’t sure of the answer. Remember, there is no penalty for guessing, and the more incorrect answers you can eliminate the better.
Oracle does change the number of questions, passing score, and time limit from time to time. In fact, the exam writers changed the number of OCA 8 questions from 77 to 80 while this book was being written! Scott and Jeanne maintain a blog that tracks updates to the real exams, as quickly as Oracle updates them:
We recommend you read this page before you take the real exam, in case any of the information since the time this book was published has changed. Although less common, Oracle does add, remove, or reword objectives. When this happens, we offer free supplemental material on our website as blog entries.
If you can score above 80 percent consistently on all of the chapters related to the exam you want to take, including the simulated practice exam, then you are probably ready to take the real exam. Just remember there’s a big difference between taking a practice test at home and spending hundreds of dollars to take a real exam at a test center.
We could write an entire chapter on test taking skills and study tips. Oh wait, we did! Both our OCA 8 and OCP 8 books each contain an appendix chock-full of helpful tips and suggestions that are designed to help you manage your time. They also include notes on how to eliminate obviously wrong answers so that when you have to guess, you’re choosing between two choices and not five.
Finally, although a lot of people are inclined to cram as much material as they can in the hours leading up to the exam, most studies have shown that this is a poor test-taking strategy. The best thing we can recommend that you do before the exam is to get a good night’s rest!
Both of the authors are moderators at CodeRanch.com, a very large and active programming forum that is very friendly toward Java beginners. It has separate forums for each of the exams:
OCA Forum: https://coderanch.com/f/117
OCP Forum: https://coderanch.com/f/24
If you don’t understand a question, even after reading the explanation, feel free to ask about it in one of those forums. You’ll get an answer from a knowledgeable Java programmer. It might even be one of us.
Good luck on the exam and happy studies!
This book has a web page that provides all the questions in this book using Wiley’s interactive online test engine.