OCP 17 - 1Z0-829
08-02-2025 - Xavier Salvador
Summary
These are the topics from the older OCP versions required to pass the exam:
Main Certification 1z0-829 exam topics
- Handing date, time, text, numeric and boolean values
- Use primitives and wrapper classes including Math API, parentheses, type promotion, and casting to evaluate arithmetic and boolean expressions
- Manipulate text, including text blocks, using String and StringBuilder classes
- Manipulate date, time, duration, period, instant and time-zone objects using Date-Time API
- Controlling Program Flow
- Create program flow control constructs including if/else, switch statements and expressions, loops, and break and continue statements
- Utilizing Java Object-Oriented Approach
- Declare and instantiate Java objects including nested class objects, and explain the object life-cycle including creation, reassigning references, and garbage collection
- Create classes and records, and define and use instance and static fields and methods, constructors, and instance and static initializers
- Implement overloading, including var-arg methods
- Understand variable scopes, apply encapsulation, and make objects immutable.
- Use local variable type inference, including using it to define lambda parameters
- Implement inheritance, including abstract and sealed classes.
- Override methods, including that of an Object class.
- Utilize polymorphism and type casting, and differentiate object type versus reference type.
- Identify object types using instanceof operator and pattern matching
- Create and use interfaces, identify functional interfaces, and utilize private, static, and default interface methods
- Create and use enumerations with fields, methods and constructors
- Handling Exceptions
- Handle exceptions using try/catch/finally, try-with-resources, and multi-catch blocks, including custom exceptions
- Working with Arrays and Collections
- Create Java arrays, List, Set, Map and Deque collections, and produce, remove, update, retrieve and sort their elements
- Working with Streams and Lambda expressions
- Use Java object and primitive Streams, including lambda expressions implementing functional interfaces, to produce, filter, transform, consume, and sort data
- Perform decomposition, concatenation and reduction, and grouping and partitioning on sequential and parallel streams
- Package and deploy Java code and use the Java Platform Module System
- Define modules and expose module content including through the use of reflection, and declare module dependencies, define services, providers and consumers
- Compile Java code, produce modular and non-modular jars, runtime images, and implement migration using unnamed and automatic modules
- Manage concurrent code execution
- Create worker threads using Runnable and Callable, manage the thread lifecycle, including automations provided by different Executor services and concurrent API
- Develop thread-safe code, using different locking mechanisms and concurrent API
- Process Java collections concurrently and utilise parallel streams.
- Use Java I/O API
- Read and write console and file data using I/O Streams
- Serialize and de-serialize Java objects
- Construct, traverse, create, read, and write Path objects and their properties using java.nio.file API
- Access databases using JDBC
- Create connections, create and execute basic, prepared and callable statements, process query results and control transactions using JDBC API
- Implement Localization
- Implement localization using locales, resource bundles, parse and format messages, dates, times, and numbers including currency and percentage values
Recommended books
1z0-829 exam
When it was available, we will also use this book for the 1z0-829 exam and this one for the mock tests.