
Message from the Authors: Read The 1Z0-819 Exam page to learn how you can easily use this book to prepare for Oracle’s 1Z0-819 Exam, as well as the 1Z0-817 Upgrade Exam.
Scott Selikoff and Jeanne Boyarsky developed a two-part study guide for the new Oracle Certified Professional (OCP), Java SE 11 Programmer exams, 1Z0-819. The second book, OCP Oracle Certified Professional Java SE 11 Programmer II Study Guide is published by Wiley Publishing. It can so be used by itself to prepare for the 1Z0-817 Upgrade Exam.
We are using this blog to publish information about the book such as objectives changes and any errata found within the book. To report an error in the book that is not yet listed here, please create a thread in the OCP forum and include “Sybex 819” in the subject.
For more information, visit Oracle’s Java SE 11 Exam page. If you have any questions for us, feel free to post in the OCP forum at CodeRanch which Scott and Jeanne visit frequently.
Key links
- Check the latest score/duration/objectives
- Upgrade exam official page (check the latest score/duration/objectives)
- Pearson VUE (register for the test) and ID requirements
- Cert View (check your score)
- OWASP Top 10
- Egregious Eleven
- Chapter 6 GitHub Examples
- Appendix A GitHub Examples
- Download Java 11 from Oracle
- Appendix GitHub Examples
- Chapter 6 GitHub Examples
Where to buy it
Length/score
Oracle has a tendency to change this information from time to time. See the exam metadata.
Changes to the objectives
- None so far
Online Material
- None so far
Blog posts related to OCP Oracle Certified Professional Java SE 11 Programmer II Study Guide:
- Chapter 10 Derby Database Setup for Prepared Statement Section
- Chapter 10 HSQL Database Setup for Callable Statement Section
Errata
All known errors are listed here. To report a potential error, please create a thread at https://coderanch.com/f/24/java-programmer-OCPJP. Be sure to include “Sybex 816” and the chapter and/or page number in the subject.
Page | Chapter | Error | Reporter | Confirmed |
iv | Intro | #13 explanation -“Line 10 includes” should be “Line 9 includes” | Olivia Johnson | 2/21/21 |
21 | 1 | In Table 1.1, “Final” should be “final” | Scott Selikoff | 7/3/20 |
44 | 1 | new Outer.new Inner() should be new Outer().new Inner() | Jesse Silverman | 11/13/20 |
49 | 1 | #10 – Remove all references to the Wild interface | Oksana Cherniavskaia | 8/19/20 |
53 | 1 | In question 16, option D, should be “Transport”, not “Transport” | Tomasz Kasprzyk | 10/18/20 |
88 | 2 | Both instances of @SafeVargs should be @SafeVarargs | Pavel Serebriakov | 8/19/20 |
89 | 2 | In the middle page “@SafeVarargs annotation to line 4” should be “@SafeVarargs annotation to line 3” | Tomasz Kasprzyk | 10/18/20 |
98 | 2 | #13 – “optional annotation” should be “optional annotation element” | Pavel Serebriakov | 8/19/20 |
124 | 3 | Set.of(‘z’, ‘o’, ‘o’) should be Set.of(‘z’, ‘o’, ‘O’) | Charles O’Leary | 9/3/20 |
129 | 3 | In the second paragraph, “This code compiles but throws an error at runtime” is incorrect because Map.of() does not take a varargs. This sentence should be “This code does not compile’ | Jos Roseboom | 9/19/20 |
129 | 3 | Map.entry(“key1”) should be Map.entry(“key2”) on the second line | Charles O’Leary | 9/4/20 |
130 | 3 | The merge() method takes a BIFunction, not a Function | Vasiliy Spodin | 9/1/20 |
137 | 3 | In the third paragraph “a class called Comparator” should be “an interface called Comparator” | Oksana Cherniavskaia | 8/22/20 |
147 | 3 | Near the middle of the page “class Duck cannot be cast” should be “class Rabbit cannot be cast” | Vladimir Prud | 8/19/20 |
150 | 3 | In the last line of code on the page, “SizeLimiteCrate” should be “SizeLimitedCrate” | Tomasz Kasprzyk | 10/18/20 |
227 | 4 | “Collectors interface” should be “Collectors class” | Amir Shah | 12/26/20 |
294 | 5 | In the 2nd exam essentials “as well as a try statement with a finally block” should be removed | Oksana Cherniavskaia | 8/20/20 |
various | 6 | There are a few references to only having one service provider implementation in a module. This is incorrect. (However, you do not need to know how to use multiple for the exam) | Vasiliy Spoden | 9/19/20 |
310 | 6 | “memorize as many command-line options for the 1Z0-815 exam” should be “memorize as many command-line options for the 1Z0-816 exam” | Scott Selikoff | 6/21/20 |
323 | 6 | Bullet 4 should say “next-highest level” rather than “next-lowest level” | Tomasz Kasprzyk | 10/18/20 |
326 | 6 | The sentence before figure 6.9 should say “the new module zoo.tickets.etech” not “the new module zoo.tickets.discount” | Jos Roseboom | 9/19/20 |
328 | 6 | At the bottom of the page, “models make up” should be “modules make up” | Tomasz Kasprzyk | 10/18/20 |
329 | 6 | In figure 6.10, the arrow from service provider interface to service provider is the wrong way. | Jeanne Boyarsky | 7/10/20 |
330 | 6 | In the last paragraph “provides a ServiceLocator” should be “provides a ServiceLoader” | Vasiliy Spodi | 8/19/20 |
342 | 6 | Options D, E, and F should say “magic.helper” instead of “magic.util” | Edmond Yong and Oksana Cherniavskaia | 8/27/20 |
356 | 7 | In the third paragraph, “results are guaranteed to be executed sequentially” should be “tasks are guaranteed to be executed sequentially” | Matus Iglarcik | 12/26/20 |
358 | 7 | In the last row of Table 7.1, remove the last sentence (about returning a Future) | Brad Bouquio | 8/19/20 |
362 | 7 | In the first sentence of “Submitting Task Collections”, Table 7.2 should be Table 7.1 | Jos Roseboom | 9/19/20 |
375 | 7 | The header “Applying a ReentrantLock Interface” should be “Applying a ReentrantLock” | Jos Roseboom | 9/19/20 |
436 | 8 | “void void” should be “void” in the first line | Vladimir Prud | 9/1/20 |
439 | 8 | In Table 8.4, void write(int) should be void write (int b) | Tomasz Kasprzy | 11/13/20 |
454 | 8 | The four method signatures at the end should have the … before args | Matus Iglarcik | 12/26/20 |
463 | 8 | The second to last line should say “characters”, not “digits” | Daniel Polách | 10/18/20 |
469 | 8 | #11 – deleteTree(“/storage”) should be deleteTree(new File(“/storage”)) in the question. Give yourself credit if you answered option F. | Jos Roseboom | 9/19/20 |
473 | 8 | #22 “line 15” should say “line 17” | Jos Roseboom | 9/19/20 |
480 | 9 | public URI toURI() should be public URI toUri() | Joel Kaze | 2/14/21 |
491 | 9 | In the tip “Files.resolve()” should be “resolve()” | Jos Roseboom | 9/19/20 |
491 | 9 | At the bottom of the page, relativize(), should be relativize(Path path) | Joel Kaze | 2/14/21 |
494 | 9 | In table 9.3, toURI() should be toUri() | Edmund Yong | 9/19/20 |
494 | 9 | In table 9.3, relativize() should be relativize(Path) | Dario Orescanin | 10/18/20 |
497 | 9 | In the first paragraph, “cobra is a symbolic link to snake” should be “snake is a symbolic link to cobra” | Tomasz Kasprzyk | 11/13/20 |
511 | 9 | In the second to last paragraph “Steam” should be “Stream” | Jos Roseboom | 9/19/20 |
514 | 9 | In the fifth row of table 9.6, “nest.gif” would be “wings.gif” | Jos Roseboom | 9/19/20 |
548 | 10 | In table 10.4, all of the wrapper classes should be changed to primitives | Tomasz Kasprzyk | 11/13/20 |
568 | 10 | In question #8, the SQL should reference the animal table rather than the names table | Tomasz Kasprzyk | 11/13/20 |
596 | 11 | In table 11.2, ObjectInputStream and ObjectOutputStream should be swapped | Ilenia Salvadori | 9/19/20 |
599 | 11 | In the code block, the getOrder() method should be static | Tomasz Kasprzyk | 11/13/20 |
Various | Appendix | All references to “zoo.animals” should be “zoo.animal” | Jeanne Boyarsky | 6/17/20 |
676 | Chapter 6 answer | #9 – The answer should be H and “–internal-jdk” should be “jdk-internals” | Mustafa Iilkkan | 7/18/20 |
677 | Chapter 6 explanation | #15 – “The service provider must” should be “The service locator must” | Edmund Yong | 8/22/20 |
680 | Chapter 7 Explanation | #14 – The answer is correct. Option C would not be correct though i the method were fixed because service is not effectively final. | Tomasz Kasprzyk | 10/18/20 |
687 | App Answer | #11 – give yourself credit if you answered E (But knowing that is out of scope) | Oksana Cherniavskaia | 7/19/20 |
688 | App Answer | #22 – The correct answer is C and E. APPEND throws an exception if the file does not exist | Matus Iglarcik | 12/26/20 |
Test bank | 1 | The question about which module “can reference classes” in another module has the wrong answer. E and F are also correct. | Fabio Salvi | 8/19/20 |
Test bank | 1 | The question with r.negate() should also have BiPredicate as a correct answer | Samuel Silver Moos | 1/26/21 |
Flashcards | The flashcard about get() should be Supplier as the answer | Guerchi Lucio | 12/26/20 |