About the Java SE 17 Developer (1Z0-829) Exam
Key Takeaways
Oracle's 1Z0-829 exam has 50 multiple-choice questions, a 90-minute time limit, and a 68% passing score (Oracle MyLearn exam page).
Oracle has announced that the 1Z0-829 exam retires on February 28, 2027, so candidates should schedule it before that date.
An Oracle exam attempt is valued at US$245, and Oracle delivers English exams itself through online-proctored sessions booked in MyLearn.
The blueprint has 11 official topic areas with no published weights, plus expected knowledge of logging, standard annotations, and generics with wildcards.
Oracle's question assumptions tell candidates to treat missing imports, file names, and wrapped lines as non-issues unless the question says otherwise.
About the Java SE 17 Developer (1Z0-829) Exam
Quick Answer: Oracle's Java SE 17 Developer exam (1Z0-829) has 50 multiple-choice questions, a 90-minute time limit, and a 68% passing score. Passing it earns the Oracle Certified Professional: Java SE 17 Developer credential. Oracle delivers English exams itself through an online-proctored session booked in Oracle MyLearn, and an exam attempt is valued at US$245. Oracle has announced that this exam retires on February 28, 2027, so plan to sit it before that date.
This guide teaches the 11 official topic areas of 1Z0-829 plus the three extra skills Oracle says candidates are "also expected" to have. Every chapter targets Java SE 17 standard features only: preview features in Java 17 (such as pattern matching for switch) and APIs added after Java 17 (such as Locale.of) are flagged where older or newer material could mislead you.
Exam Facts at a Glance
| Detail | 1Z0-829 value | Source |
|---|---|---|
| Credential earned | Oracle Certified Professional: Java SE 17 Developer | Oracle MyLearn exam page |
| Number of questions | 50 | Oracle MyLearn exam page |
| Question format | Multiple choice (including choose-all-that-apply items) | Oracle MyLearn exam page |
| Duration | 90 minutes | Oracle MyLearn exam page |
| Passing score | 68% | Oracle MyLearn exam page |
| Exam attempt price | US$245 per attempt (no free retake) | Oracle MyLearn certification FAQ |
| Delivery | Online proctored, booked and taken through Oracle MyLearn | Oracle MyLearn certification FAQ |
| Retirement | February 28, 2027 | Oracle MyLearn exam page |
| Topic weights | Not published | Oracle MyLearn exam page |
At 90 minutes for 50 questions you have about 1 minute 48 seconds per question. Many questions show 15 to 30 lines of code and ask for the output or for the line that fails to compile, so the real skill is tracing code quickly and accurately.
Delivery and Policy Details
- Oracle delivers the exam directly. Since September 1, 2022, Oracle has delivered its certification exams itself; Pearson VUE continues to deliver only the Chinese and Japanese language versions of the Oracle Database, Java, and MySQL exams.
- Online proctoring. You check in through MyLearn with a supported browser (Google Chrome or Microsoft Edge) and complete a system readiness check first.
- No pen and paper. Oracle's FAQ states that pen and paper are not allowed; use the digital whiteboard and calculator in the exam control panel to trace variables.
- Rescheduling. Reschedule or cancel at least 24 hours before the appointment, or you may lose the attempt. A missed appointment is recorded as a "No Show" and counts as an attempt.
- Retakes. Oracle's Certification Program Guidelines allow you to schedule a retake of a failed exam using a new exam attempt, and you may not retake an exam you have passed. The guidelines page does not state a specific waiting period, so check the scheduling screen in MyLearn.
- Validity. Oracle's recertification policy lists expiry periods for Oracle Cloud Infrastructure (24 months), Oracle Cloud Applications (18 months), and certain Database credentials; Java SE credentials are not on that list.
The 11 Official Topic Areas and Where This Guide Covers Them
| Official topic area | What Oracle lists | Guide chapters |
|---|---|---|
| Handling date, time, text, numeric and boolean values | Primitives, wrappers, the Math API, parentheses, promotion, casting; String, StringBuilder, text blocks; date, time, duration, period, instant, and time-zone objects | 1, 11 |
| Controlling program flow | if/else, switch statements and expressions, loops, break, continue | 2 |
| Utilizing the Java object-oriented approach | Objects and nested classes, object life cycle and garbage collection, classes and records, overloading and varargs, scope, var, encapsulation and immutability, inheritance including abstract and sealed classes, overriding (including Object methods), polymorphism, casting, instanceof and pattern matching, interfaces, functional interfaces, enums | 3, 4, 5 |
| Handling exceptions | try/catch/finally, try-with-resources, multi-catch, custom exceptions | 10 |
| Working with arrays and collections | Arrays, List, Set, Map, Deque; add, remove, update, retrieve, sort | 6 |
| Working with streams and lambda expressions | Object and primitive streams with lambdas; supply, filter, map, consume, sort; decomposition, concatenation, reduction, grouping, partitioning; sequential and parallel streams | 7, 8, 9 |
| Packaging and deploying Java code and using the Java Platform Module System | Modules and dependencies, exposing content including for reflection, services; compiling, modular and non-modular JARs, runtime images, migration with unnamed and automatic modules | 12 |
| Managing concurrent code execution | Runnable, Callable, thread life cycle, executor services; thread-safe code and locking; processing collections concurrently, including parallel streams | 13, 9 |
| Using the Java I/O API | Console and file data with I/O streams; serialization; Path objects and the java.nio.file API | 14 |
| Accessing databases using JDBC | Connections; basic, prepared, and callable statements; query results; transactions | 15 |
| Implementing localization | Locales, resource bundles, parsing and formatting messages, dates, times, numbers, currency and percentages | 11 |
Oracle also states that candidates are expected to understand the basics of the Java Logging API, use annotations such as @Override, @FunctionalInterface, @Deprecated, @SuppressWarnings, and @SafeVarargs, and use generics, including wildcards. Chapter 16 covers annotations and logging, and Chapter 6 covers generics.
How to Read Exam Code: Oracle's Stated Assumptions
Oracle publishes rules for interpreting the code in questions. Apply them before you hunt for compile errors:
- Missing package and import statements: if the sample code has none and the question does not mention them, assume all code is in the same package or that the needed imports exist.
- No file or directory names: assume either that all classes are in one file or that each class is in its own file in one directory, whichever lets the code compile and run.
- Unintended line breaks: a line that looks wrapped (for example, a broken
Stringliteral) is one line, not a compile error. - Code fragments: assume all supporting code exists and the environment supports compiling and running the fragment.
- Descriptive comments: take comments such as "setters and getters go here" at face value; assume that code exists and works.
These rules mean a missing import java.util.*; is never the intended answer, but a missing throws clause, a wrong modifier, or an unreachable statement often is.
Study Strategy for 1Z0-829
- Trace, then predict. For every code question decide first whether it compiles, then whether it throws at runtime, and only then compute the output.
- Learn the Java 17 boundary. Records (Java 16), sealed classes (Java 17), pattern matching for
instanceof(Java 16), text blocks (Java 15), and switch expressions (Java 14) are standard in Java 17. Pattern matching forswitch, record patterns, virtual threads, and sequenced collections are not. - Practice the API details. Most traps are exact return types (
Math.roundreturnslong), exclusive end indexes (substring), and checked versus unchecked exceptions. - Use the practice questions. Pair each chapter with the free 1Z0-829 practice questions and re-read the sections where you miss items.
Which set of facts matches Oracle's published details for the 1Z0-829 exam?
60 questions, 90 minutes, 68% passing score
50 questions, 90 minutes, 68% passing score
50 questions, 120 minutes, 65% passing score
50 questions, 90 minutes, 70% passing score
A 1Z0-829 question shows a class that uses ArrayList and LocalDate but contains no import statements, and the question does not mention imports. How should you treat the missing imports?
As a compile error only for LocalDate, because java.time is outside java.base
As a compile error, because java.util and java.time are not imported automatically
As present: Oracle's assumptions say to assume the needed import statements exist
As a runtime NoClassDefFoundError when the class is first loaded
Which language feature is NOT part of standard Java SE 17 and would require --enable-preview to compile with javac 17?
A text block holding a multi-line SQL query
A switch with type-pattern case labels such as case Integer i ->
A sealed interface whose permits clause lists two final classes
A record that validates its components in a compact constructor
Sections you finish are checked off in the contents.