We may earn an affiliate commission when you visit our partners.
Course image
Andrii Piatakha

Are you ready to pass the Oracle Certified Professional: Java SE 17 Developer (1Z0-829) exam and prove your mastery of one of the world’s most in-demand programming languages?

Java remains a dominant force in enterprise applications, cloud systems, Android development, and financial services — and earning the OCP Java 17 certification is your ticket to career advancement, credibility, and higher salaries.

Read more

Are you ready to pass the Oracle Certified Professional: Java SE 17 Developer (1Z0-829) exam and prove your mastery of one of the world’s most in-demand programming languages?

Java remains a dominant force in enterprise applications, cloud systems, Android development, and financial services — and earning the OCP Java 17 certification is your ticket to career advancement, credibility, and higher salaries.

This all-in-one training program is designed to take you from core Java fundamentals to the advanced topics needed to ace the 1Z0-829 exam — all while helping you build real, hands-on coding skills you can use immediately in the workplace.

Why This Course Is Different

Unlike generic Java tutorials, this course is laser-focused on the official Oracle exam objectives for Java SE 17, ensuring you’re learning exactly what’s required — no fluff, no guesswork. You’ll get:

  • Step-by-step explanations of every 1Z0-829 exam topic

  • Live coding demonstrations to cement your understanding

  • Practice questions and mock exams that mirror the real test format

  • Exam-day strategies to maximize your score and reduce stress

Whether you’re upgrading from Java 8/11 or starting fresh, this course covers all modern Java 17 features — including records, sealed classes, text blocks, pattern matching, and the powerful Java Platform Module System (JPMS).

What You’ll Learn

We’ll cover every domain of the official exam:

  1. Handling Date, Time, Text, Numeric & Boolean Values

    • Work with primitives, wrappers, Math API, type casting

    • Manipulate text using String, StringBuilder, and text blocks

    • Master the Date-Time API for dates, times, durations, instants, and time zones

  2. Controlling Program Flow

    • Implement decision-making with if/else and enhanced switch

    • Work with loops, breaks, and continues effectively

  3. Object-Oriented Programming in Java

    • Classes, records, inheritance, polymorphism, abstract and sealed classes

    • Interfaces with private, static, and default methods

    • Enums with fields, methods, and constructors

  4. Exception Handling

    • try/catch/finally, multi-catch, try-with-resources, and custom exceptions

  5. Arrays and Collections

    • Manipulate List, Set, Map, and Deque collections

    • Sorting, updating, and retrieving elements efficiently

  6. Streams and Lambda Expressions

    • Filtering, mapping, reducing, grouping, and parallel processing

  7. Modules, Packaging & Deployment (JPMS)

    • Define modules, dependencies, and services

    • Create modular/non-modular JARs and custom runtime images

  8. Concurrency

    • Create and manage threads with Runnable and Callable

    • Use ExecutorService, locks, and parallel streams

  9. Java I/O & NIO.2

    • Read/write files, serialize/deserialize objects

    • Work with Path and file properties

  10. JDBC Database Access

    • Connect to databases, execute queries, manage transactions

  11. Localization & Additional Features

    • Locales, resource bundles, formatting, annotations, and logging

Who This Course Is For

  • Developers preparing for the Oracle Java

    Java 17 is a Long-Term Support (LTS) release, meaning it will be supported for many years — making it the perfect time to invest in your skills. Companies worldwide are migrating to Java 17, and certified developers are in high demand.

    Don’t just learn Java — prove your expertise and set yourself apart. Enroll now and start your journey to becoming an Oracle Certified Professional Java SE 17 Developer.

Enroll now

What's inside

Learning objectives

  • Master all official oracle 1z0-829 exam objectives for java se 17 developer certification
  • Confidently work with primitives, wrapper classes, type promotion, and casting in java
  • Manipulate text effectively using string, stringbuilder, and text blocks
  • Work with date-time api for dates, times, durations, instants, time zones, and dst
  • Implement program control flow using if/else, loops, break/continue, and enhanced switch
  • Design and use classes, records, enums, and nested classes with proper encapsulation and immutability
  • Apply inheritance, polymorphism, sealed classes, and pattern matching in real-world scenarios
  • Handle exceptions with try/catch/finally, multi-catch, try-with-resources, and custom exceptions
  • Create, manipulate, and sort arrays, lists, sets, maps, and deques
  • Use streams and lambda expressions to filter, map, group, and reduce data in sequential and parallel processing
  • Package and deploy code using the java platform module system (jpms), modular jars, and runtime images
  • Write thread-safe concurrent applications with runnable, callable, executorservice, locks, and parallel streams
  • Perform file i/o and nio.2 operations, including serialization, deserialization, and path manipulation
  • Access databases with jdbc: connections, prepared statements, result sets, and transaction management
  • Implement localization, annotations, logging, and generics to build internationalized, maintainable java applications
  • Show more
  • Show less

Syllabus

Introduction

From this lecture you will learn:
• How to communicate during this course

• Where to ask questions

• How to ask questions

• Communication channels

Read more

From this lecture you will learn:

• Where to find good tests to verify your knowledge

• How to get unlimited access to Learn IT application (only for my students from Udemy)

In this lesson, I’ll show you how my students get exclusive, free, no sign-up access to a one-of-a-kind AI Bot I personally built to help you deeply learn the material, reinforce your knowledge, and gain a real advantage in interviews, real-world work and career growth.

From this lecture you will learn:

• Java History

• Why Java

• What you can implement with Java

• This training course structure

• Opportunities after this course

• What is JVM

• What is JRE

• What is JDK

From this lecture you will learn:

• How to chose JDK version

• Difference between openjdk and oraclejdk

• How to install jdk on computer

• How to configure environment variables

From this lecture you will learn:

• What are console applications

• How to compile .java files to bytecode

• Basic Syntax

• How to create ‘Hello World’ app on Java

• What are compilation errors

• How to execute our programs on JVM

In the lesson we will solve homework together with and we will write batch script from scratch to compile your source code and run Hello World application.

From this lecture you will learn:

• What is IDE

• What are the most popular IDE for Java development

• Eclipse for Java EE developers: Overview

• Eclipse Java Project

• What is a package

From this lecture you will learn:

• What are comments

• What are types of comments in Java source code

• Java Doc

• Tips and best practices

The Quiz covers content from the following lessons:

  • What is Java and JDK

  • JDK Installation

  • First application: Hello World App

  • Integrated Development Environment, Eclipse Overview

  • Comments in Java Source Code

From this lecture you will learn:

• What data types exists in Java

• What are primitive types

• Integers

• Floating-point numbers

• Characters

• Boolean

• Primitive types conversion

• What are variables

• 'var' variables

• Java keywords

From this lecture you will learn:

• Number Systems

• Binary number system

• Octal number system

• Hexadecimal number system

• How to convert from one system to another

• Binary, octal and hexadecimal literals in Java

From this lecture you will learn:

• Arrays: overview

• One-dimensional arrays

• How to access elements in arrays

• Default values for elements in array

• ArrayIndexOutOfBoundsException

• Array literal

• Multidimensional arrays

•‘ null’ values

• java.util.Arrays

• import statement

• How to investigate JDK source code

The Quiz covers content from the following lessons:

  • Primitive types and variables

  • Number Systems

  • Arrays

From this lecture you will learn:

- how to create packages in eclipse

- how to configure package presentation in eclipse

- what is flat and hierarchical package presentation

- how to create nested packages

- how to create package during class creation

From this lecture you will learn:

- What are eclipse plugins?

- How to install free plugins?

- Eclipse marketplace

- How to change style of the workspace

From this lecture you will learn:

• How to rename multiple items at once

• Code formatting

• Configure formatting rules

• Extract variable from expression

• Extract method from multiple statements

• Import optimization

From this lecture you will learn:

• What are operators?

• Type of operators

• Arithmetic operators

• Assignment operators

• Relational operators

• Logical operators

• Bitwise operators

• Ternary operator

• Operator precedence

From this lecture you will learn:

• Dividing of integers specifics

• Subtraction of floating-point numbers specifics

• BigDecimal type

• How to control precision of arithmetic operations

From this lecture you will learn:

• java.lang.Math class overview

• How to perform basic mathematical operations

• Rounding

• Random number generation

•  NaN - what is not a number?

•  Infinity - what is 'infinity'?

•  How to find max and min value?

•  How to find square root?

From this lecture you will learn:

• What is expression

• What is statement

• Type of the expression in Java

• Concatenation with String

From this lecture you will learn:

• How to compare primitives

• How to compare reference types

• Java Memory Model: Heap and Stack in Java

• Integer pool

• equals() method

• How to compare arrays

From this lecture you will learn:

• How you can read input from the console

• What is System.in

From this lecture you will learn:

• How to run programs with arguments

• Project Explorer VS Navigator view in Eclipse

• How to run JVM with arguments

• How to set up maximum heap size for JVM

• Solutions for coding exercises

The Quiz covers content from the following lessons:

  • Operators in Java

  • Operations with integers and floating-point numbers, BigDecimal type

  • Math class, NaN, Infinity

  • Type of the expression in Java

  • Compare primitive and reference types & Java Memory Model

  • Read user input from console

From this lecture you will learn:

• java.lang.String class overview

• Main String methods

• How to create String objects

From this lecture you will learn:

• String pool

• String comparison

From this lecture you will learn:

• What are escape sequences?

• What  escape sequences are available in Java?

• Unicode characters escaping

From this lecture you will learn:

• How to format string

• What are format specifiers?

• How to use Formatter?

• When need to format strings?

From this lecture you will learn:

• What are regular expressions?

• When to use regular expressions?

• Why we need regular expressions?

• How to write regular expressions in Java?

• Pattern and Matcher objects in Java

• How to find words in String

In this lesson you will see one of the way to solve home tasks. Best practices will be shared. POSIX groups will be discussed.

The Quiz covers content from the following lessons:

  • String: object creation and main methods overview

  • String comparison:  How to compare Strings and what is String Pool

  • Escape Sequences in Java

  • String Formatting

  • Regular expressions in Java

From this lecture you will learn:

• How to use 'if' statement

• Syntax of 'if' statement

• Nested 'if' statements

• 'if-else-if' ladder

In this lesson you will find solution for coding exercises from 'if' statement topic

From this lecture you will learn:

• How to use 'switch' statement

• Syntax of 'switch' statement

• Type of expression to be used in 'switch'

• 'break' statement

• 'default' statement

• 'switch' vs 'if statement

In this lesson you will find solution for 'swtich' statement homework.

The Quiz covers content from the following lessons:

  • ‘if-else’ construction

  • ‘switch’ construction

From this lecture you will learn:

• How to generate random numbers?

• What is java.util.Random type?

• API of java.util.Random

• How to generate random numbers in specific range of values

From this lecture you will learn:

• What are iteration statements in Java?

• When we need to use iteration statements in Java

• Examples of loops in Java

• 'while' loop

From this lecture you will learn:

• How to use 'do-while' loop

• Usage of ´do-while´ loop - examples

• When to use 'do-while' over 'while' loop

From this lecture you will learn:

• How to use 'for' with condition loop

• Examples of the use

• Comma in for loop

From this lecture you will learn:

• How to use 'for each' loop

• Examples of the use

• Shortcut in eclipse to create 'for each' loop

From this lecture you will learn:

• How you can put one loop inside another one

• When you need to use nested loops

From this lecture you will learn:

• What are jump statements

• Continues statement

• Break statement

From this lecture you will learn:

• What is goto statement in programming?

• Labels in Java

• How to use labels in Java

In this lesson we will review solution for coding exercises.

The Quiz covers content from the following lessons:

  • 'while' loop

  • 'do-while' loop

  • 'for' with condition loop

  • 'for each' loop

  • Nested loops

  • Jump Statements - Break and Continue

  • Labels in Java

From this lecture you will learn:

• Passing data by value

• Passing data by reference

• Passing primitive types to method in Java

• Passing reference types to method in Java

From this lecture you will learn:

• What is recursion

• What are recursive methods

• How to write recursive methods

• When do we need recursive methods

• Pros and cons of recursive methods

From this lecture you will learn:

• What are variable-length arguments

• Syntax of varargs

• Varargs in the methods

In this video we will review coding exercises from this section

The Quiz covers content from the following lessons:

  • Methods in Java: Overview

  • Parameter Passing Mechanism in Java

  • Recursive methods

  • Variable Length Arguments

From this lecture you will learn:

• What is Enum type

• How to declare Enum type

• How to initialize Enum variables

• How to compare Enum types

• Iteration over Enum constants

• Custom properties of Enum

• Custom methods of Enum

From this lecture you will learn:

• What is a debugger

• Why do we need to debug our programs

• How to debug java program in Eclipse

• How to analyze program execution

• How to adjust program execution in debug mode if needed

• What are breakpoints

From this lecture you will learn:

• What is OOP

• What is an object

• Class

• Why do we need OOP

• OOP advantages

• OOP VS Functional programming

• Inheritance

• Encapsulation

• Polymorphism

• Abstraction

From this lecture you will learn:

• What does class consist of

• Fields

• Initialization blocks

• Constructors

• Methods

• Nested classes

• Getters and setters

• toString() method

• How to create object

From this lecture you will learn:

• Concrete classes

• Nested classes

• Final classes

• POJO classes

• Abstract classes

• Anonymous classes

• Abstract keyword

From this lecture you will learn:

• What are interfaces

• What does interface consist of

• Abstract class VS Interface

• Interface VS Class VS Type

From this lecture you will learn:

• What is inheritance

• ‘super’ keyword

• ‘instanceof’ operator

• How to extend classes

• Inheritance rules

From this lecture you will learn:

• What is polymorphism

• Method overriding

• Override VS Overload

• Dynamic binding

• ‘final’ keyword

From this lecture you will learn:

• What is ‘static’ keyword

• Where we can use ‘static’ keyword

• Static methods

• Static fields

• Static import

• Static VS dynamic binding

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Activities

Coming soon We're preparing activities for Oracle Java SE 17 Developer Professional: 1Z0-829 Exam. These are activities you can do either before, during, or after a course.

Career center

Learners who complete Oracle Java SE 17 Developer Professional: 1Z0-829 Exam will develop knowledge and skills that may be useful to these careers:

Reading list

We haven't picked any books for this reading list yet.
Beginner-friendly introduction to Java programming. It covers the basics of the language and good starting point for those who want to learn Java from scratch.
Comprehensive and in-depth reference guide to Java SE 17. It covers all aspects of the platform, from the basics to advanced topics such as concurrency and security. It valuable reference for experienced Java developers who need a deep understanding of the platform.
This comprehensive guide provides a thorough introduction to OOP concepts and their implementation in Java, making it a valuable resource for beginners and experienced developers alike.
A visually appealing and engaging book that introduces and explains design patterns in a clear and accessible way, making it suitable for beginners and experienced developers alike.
A foundational book on domain-driven design, which focuses on aligning software design with the domain of the problem being solved, essential for developers seeking to create maintainable and extensible OOP systems.
A practical guide to applying OOP principles and agile development practices in C#, including design patterns and refactoring techniques, essential for developers seeking to develop high-quality software using C#.
A foundational book on enterprise application architecture, which provides a set of patterns for designing and implementing scalable, maintainable, and flexible OOP systems.
Provides a comprehensive treatment of real-time systems, which are systems that must meet strict timing constraints. Laplante covers a wide range of topics, including concurrency, scheduling, and fault tolerance. The book valuable resource for anyone interested in designing and implementing real-time systems.
Provides a comprehensive treatment of distributed algorithms, which are used to solve problems in distributed systems. Lynch covers a wide range of topics, including synchronization, fault tolerance, and consensus. The book valuable resource for anyone interested in designing and implementing distributed systems.
Covers more advanced topics in Java concurrency, such as non-blocking synchronization, high-performance computing, and concurrency patterns. Lea's deep expertise in Java concurrency makes this book a valuable resource for experienced Java programmers who want to take their concurrency skills to the next level.
This textbook provides a comprehensive overview of parallel computing, covering topics such as parallel architectures, programming models, and performance analysis. Grama, Gupta, Karypis, and Kumar are all renowned experts in the field, and their book is considered a standard reference.
Covers both the theoretical foundations of parallel programming and the practical aspects of implementing parallel algorithms on real-world systems. Wilkinson and Allen's extensive experience in the field makes the book a valuable resource for both students and practitioners.
Focuses specifically on semaphores, a fundamental concurrency primitive, and provides a comprehensive treatment of their design, implementation, and applications. Downey's clear explanations and code examples make the book a valuable resource for anyone working with concurrency.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser