Exam 1z0–819 Oracle Certified Professional: Java 11 Developer — pass notes

Roman Ivanov
4 min readNov 10, 2020

At the beginning of October Oracle simplified obtaining of Java certification — instead of two exams now it is necessary to pass one, while the price for the exam has not changed. Who is interested in the level of tasks and more details about the exam, I will describe why I decided to pass, how I prepared, what questions were, and what conclusions I made.

In October I saw the news that Oracle is launching a new exam 1z0–819 instead of the previous 1z0–815 and 1z0–816. Previously, in order to become Oracle Certified Professional, you had to pass two exams and spend a total of $500. Now the amount has been reduced by half. In addition, the number of questions has changed, if earlier each exam had 80 questions and 150 minutes, now the exam lasts 90 minutes and there are 50 questions covering all topics from previous exams. Most of the questions may have several correct answers.

Let’s start with what goals I pursued: since I have physical education and I studied java myself, then this certification could help to structure my knowledge on java, as well as have some documents confirming my level.

How can I register? You register with an Oracle partner pearsonvue.com, tie your Oracle account, choose whether you want to pass in the center or from home. If you choose the option from home, you will be followed through the camera and microphone throughout the exam, there should be no one in the room, you can not talk to anyone and look only at the screen, the Internet must be stable, without troubles, otherwise, the result will be canceled. I chose to take the exam in a specialized center, so it is calmer.

What materials can help in preparation? If you have at least some programming experience, I recommend using the OCP Oracle Certified Professional Java SE 11 Programmer II Study Guide: Exam 1Z0–816 and Exam 1Z0–817 from Scott Selikoff, Jeanne Boyarsky This book is written for exam 1z0–816 and it covers most of what will be on the exam. These authors also have a book to prepare for the first part of the previous exam 1z0–815, but it is designed for absolute beginners and frankly boring. Also, you can find mock exams to check the knowledge learned after reading the book.

What are the questions? Only 50 questions, which are given 90 minutes, that is less than 2 minutes for a question. In some questions, it is possible to have several correct answers. In total, there can be up to 7 answers. It is necessary to answer 68% of the questions correctly.

What I would like to pay attention to. A lot of questions on streams, lambda, and functional interfaces.

This kind of tasks may get:

You have to find out which line has the error if any:

IntStream is = IntStream.of(1, 3, 5);
int x = is.filter(i->i%2 == 0).average(); //1
System.out.println(x);
int y = is.filter( i->i%2 != 0 ).sum();//2
System.out.println(y);
is = IntStream.of(1, 3, 5, 9);
int z = is.filter( i->i%3 != 0 ).count();//3
System.out.println(z);

The same tasks using collectors. What will be displayed on the screen:

Actually, these questions are intertwined with questions about the collection. For example, it is necessary to answer what will display the next code, if it is compiled at all:

var collection = new HashSet<>();
collection.add(1);
var list1 = List.of(collection);
collection.add(2);
var list2 = List.copyOf(collection);
System.out.println(list1);
System.out.println(list2);

And how will the result change if we write instead of the first line:

var collection = Arrays.asList(1,2,3);

var can be used specifically to confuse the examinee:

You have to specify what will be displayed, or you have to specify that the program will not compile, or an exception will be thrown while working.

You have to understand what happens during the inheritance.

Let us assume that this method is in a class with the following signature:

public List<Integer> getCollection() { return new ArrayList<Integer>(); }

What methods below can be in the subclass?

public List<? super Integer> getCollection() { return new ArrayList<Integer>(); } public List<? extends Integer> getCollection() { return new ArrayList<Integer>(); }public ArrayList<Integer> getCollection() { return new ArrayList<Integer>(); }

There are a couple of questions on interfaces:

How will the program work in this case?

These topics account for most of the questions, probably, more than 25. Topics of multi-threading, working with files, annotations, modules are represented by only two or three questions each. Other topics like working with JDBC, localization, etc. are mostly one question each.

A complete list of topics that can be covered in the exam can be found here.

Separately, I would like to mention that it was a discovery for me — I had two questions on how to use the doPrivileged API, I’ve never encountered it at all before. So, it’s worth working on this topic separately, you can look at it here.

Once again, I want to point out that time is seriously limited.

How long do you have to prepare?

If you are not an instructor for java developers, just a regular developer, I would recommend that you put a month on the preparation — allocating an hour or two after work. But of course, everything depends on your level.

What conclusions can be drawn?

Preparing for the exam helps to structure knowledge and expand your horizons in the field of API. In particular, I discovered a couple of interesting moments of working with files.

Certification can confirm your level of knowledge, at least allow you to skip on questions about java in the interview.

--

--