Browse Oracle Certification Guides

Oracle Java 17 1Z0-829 Guide: Java SE 17 Developer

Oracle Java 1Z0-829 exam guide covering Java 17 language behavior, flow, objects, collections, streams, and concurrency decisions.

This guide targets Oracle Java SE 17 Developer (1Z0-829). As of April 13, 2026, Oracle’s public storefront page for Java SE 17 Developer remained live, and the storefront schema on that page still showed a price of 245 USD. Oracle’s public learning-path page for Become a Java SE 17 Developer also remained live and still described the exam-prep path around object-oriented programming, Java syntax and operators, Collections, Streams, I/O, Concurrency, deployment, and new features introduced as part of JDK 17. Oracle’s public storefront is still JS-heavy, so this guide uses the current IT Mastery Oracle 1Z0-829 curriculum bundle to turn that vendor-owned coverage into a usable exam tree.

Overload resolution: The rule set Java uses to decide which method signature is actually called.

Sealed type: A class or interface that explicitly restricts which other types may extend or implement it.

Optional: Java container type used to model the possible presence or absence of a value without using null directly.

At a glance

Exam fact Current signal
Official exam name Java SE 17 Developer
Exam code 1Z0-829
Oracle storefront live on education.oracle.com as of April 13, 2026
Oracle storefront price signal 245 USD
Oracle learning-path page live on learn.oracle.com as of April 13, 2026
Planning baseline used in this guide 50 questions, 90 minutes, 68% passing, multiple choice, proctored online
Guide model 13 topic chapters -> 13 section lessons

This exam rewards exact code reading. Strong answers usually begin by classifying the stem first: compile-time legality, runtime behavior, API contract, mutability/order, or visibility/concurrency. The common trap is picking the answer that feels right if you skim the snippet instead of tracing the actual language rule.

How to use this guide

  1. Start with the study plan if you need a weighted route through the current Java 17 topic map.
  2. Work the chapters in order unless you already know your weak lane, because types, control flow, OOP, generics, and streams build directly on each other.
  3. Use the cheat sheet after the lessons so the fast rules reinforce real code-reading rather than replacing it.
  4. Use the faq for exam-format signals, readiness questions, and final-week triage.
  5. Use the resources page whenever you need to confirm a rule against Oracle docs, the JLS, or Java 17 feature specs.
  6. Use the glossary when terms like wildcard variance, module readability, sealed hierarchies, and try-with-resources start to blur together.

Chapter map

Oracle’s public Java SE 17 storefront pages do not expose a simple public weighting table, so the chapter weights below come from the current IT Mastery Oracle 1Z0-829 curriculum bundle used to organize this guide.

Topic Planning weight Chapter Start here
Language Fundamentals and Type System 6 1. Fundamentals 1.1 Types and Operators
Control Flow and Exceptions 8 2. Flow 2.1 Flow and Exceptions
OOP, Classes, Interfaces, Inheritance and Polymorphism 10 3. OOP 3.1 Classes and Inheritance
Encapsulation and Object Model 6 4. Objects 4.1 Access and Contracts
Generics and Collections Framework 12 5. Generics 5.1 Collections and Wildcards
Functional Programming 9 6. Lambdas 6.1 Lambdas and Method Refs
Streams and Optional 12 7. Streams 7.1 Collectors and Optional
Modern Java 17 Features 11 8. Java 17 8.1 Records, Sealed and Switch
Java Platform Module System 6 9. Modules 9.1 JPMS and Services
Concurrency Basics 8 10. Concurrency 10.1 Threads and Executors
I/O, NIO.2 and HTTP Client 6 11. I/O 11.1 Files and HTTP Client
Date/Time API 3 12. Time 12.1 Temporal Types
Annotations, Reflection and Packaging 3 13. Packaging 13.1 Annotations and Reflection
    flowchart LR
	  A["1. Types, control flow, OOP"] --> B["2. Collections, lambdas, streams"]
	  B --> C["3. Modern Java 17 features and modules"]
	  C --> D["4. Concurrency, I/O, time, packaging"]

What strong answers usually do

  • determine the exact declared type before predicting output or legality
  • separate does not compile from compiles but behaves differently than expected
  • trace overload choice, wildcard direction, stream lifecycle, and exception flow in a repeatable order
  • treat mutability, encounter order, and shared state as deliberate elimination clues

Where candidates usually lose points

Failure pattern Better instinct
mentally running code before checking whether it compiles resolve declarations, checked exceptions, and signatures first
treating wildcards and streams as intuition problems use explicit rule language instead of vibes
forgetting modern Java 17 features are active exam territory records, sealed types, text blocks, and modern switch matter
assuming concurrency or I/O behavior from framework habits use the actual JDK contract in the stem

In this section

Revised on Sunday, May 10, 2026