Java SE 8 Programmer I (OCAJP 8) study materials
Java SE 8 Programmer I (OCAJP 8) study resources

Java SE 8 Programmer I (OCAJP 8) case studies

Java SE 8 Programmer I (OCAJP 8) · Put your knowledge to work in context.

The Java SE 8 Programmer I credential - exam code 1Z0-808, widely known as OCAJP 8 - is an entry-level Oracle certification for developers who want evidence that they can read, write, and reason about core Java code. It suits programmers in their first year or two of Java, students finishing a formal course, and developers moving into Java from another language. It is also the usual first step for people who later aim at the Programmer II (OCPJP) level. The exam is a code-reading and code-prediction test rather than an IDE exercise. The Java SE 8 Programmer I (OCAJP 8) case studies are 5 cases and about 3,928 words.

1

Stock Ledger: Narrowing, Compound Assignment and Ternary Unboxing

A warehouse team is rewriting its stock ledger in a Java SE 8 codebase. The class holds short onHand = 120; and byte reorder = 10; .

800 words, about 4 min
2

Seating Chart: Ragged Arrays, Enhanced For and Off-By-One Loops

An exam centre is writing a seating tool. A utility line declares int[] rowA, rowB[]; .

810 words, about 4 min
3

Booking Overloads, Leaked Arrays and a Static Counter

A test class calls reserve(2) , reserve(2L) , reserve(Integer.valueOf(2)) and reserve() . A reviewer predicts two compile-time ambiguities: one for reserve(2) (between int and long ) and one for reserve() (between the wrapper and the varargs version).

772 words, about 4 min
4

Report Hierarchy: Constructor Dispatch, Hidden Statics and Field Shadowing

A reporting module contains the following classes. Report declares int pages = 10; , a private String format() returning "plain", a protected Object summarize() returning "summary", a static void render() printing "Report ", a no-argument constructor that calls describe() , and an instance method void describe() printing "Report.describe ".

754 words, about 4 min
5

Import Pipeline: Overriding Throws Clauses and a Finally That Returns

An import pipeline declares abstract class Importer { abstract String load(String path) throws IOException; } . Three subclasses follow.

792 words, about 4 min