This repository contains my hands-on practice while preparing for the Oracle Certified Professional: Java SE 17 Developer exam.
Each branch corresponds to a specific module or concept from the certification track.
The goal is to build a solid understanding of the Java language from fundamentals to advanced features.
Below is the complete mapping of modules and the corresponding branches where applicable.
Concepts:
- Java origins, ecosystem, and use cases
- Platform independence and provider neutrality
- Object-oriented programming fundamentals
- Java syntax and coding conventions
mainmethod structure- Compilation & execution workflow (
javac/java)
Concepts:
- Primitive types and literals
- Operators and primitive casting
Mathclass usage- Flow control (
if,switch, loops) - JShell for rapid prototyping
Concepts:
String, text blocks,StringBuilder- Wrapper classes
- Conversions between Strings and primitives
BigDecimal- Date/time API (
LocalDate,LocalDateTime,Duration, etc.) - Localization and formatting (
Locale,NumberFormat,DateTimeFormatter)
Branch: practice-4
Concepts:
- Classes & objects
- Methods, fields, constructors
- Access modifiers
- Object lifecycle and memory basics
Branch: practice-5
Concepts:
- Method overloading
- Constructors & initialization
- Encapsulation & immutability
- Enumerations (
enum) - Parameter passing (pass-by-value)
- Memory allocation & cleanup (stack vs heap)
Branch: practice-6
Concepts:
- Class inheritance & polymorphism
- Method overriding
- Records
- Sealed classes
- Pattern matching with
instanceof
Branch: practice-7-interfaces-generics
Concepts:
- Interfaces, default & static methods
- Functional interfaces basics
- Generics (classes, methods, bounded types)
- Polymorphism with abstraction
Branch: practice-8-arrays-loops
Concepts:
- Arrays (1D/2D)
- Looping constructs
- Basic data iteration and transformations
Branch: practice-9-collections
Concepts:
- Collections API:
List,Set,Map - Iterators
- Sorting with
Comparator&Comparable
Branch: practice-10-nested-classes-and-lambda-expressions
Concepts:
- Inner & nested classes
- Anonymous classes
- Lambda expressions
- Functional programming patterns
Branch: practice-11-Java-Streams-API
Concepts:
- Stream pipelines
- Intermediate operations (
map,filter,sorted, etc.) - Terminal operations (
collect,reduce, etc.) - Functional data processing
(Current module)
Concepts:
- Exception hierarchy
- Throwing & handling exceptions
- Custom exceptions
try-with-resources- Logging APIs (
java.util.logging, SLF4J basics) - Debugging techniques
Concepts:
- Streams (byte & character)
- File I/O
- NIO.2 (
Path,Files, directory operations) - Serialization basics
Concepts:
- Threads & executors
- Synchronization
- Concurrency utilities (
CompletableFuture,ConcurrentHashMap) - Thread-safe patterns
Concepts:
- Java Platform Module System (JPMS)
module-info.java- Packaging & deployment
- JAR structure
- Built-in & custom annotations
- Retention policies
- Target types
- Connecting to databases
- Statements & prepared statements
- Transactions
- Cryptography basics
- Secure coding practices
- Permissions & policies
- Wildcards
- Type inference
- Generic patterns
- Packaging applications
- Deploying Java workloads on OCI
- Additional utilities and APIs
- Best practices and edge cases
- Strengthen core and advanced Java SE knowledge
- Track progress through the Oracle Java SE 17 certification curriculum
- Serve as a long-term reference for clean, modular Java code
- Complement real-world project experience (Spring Boot, microservices, etc.)
- Java 17
- Pure Java SE
- Works with IntelliJ IDEA, VS Code.
- Compilable with
javacand runnable withjava
This repository is not a full application but a structured learning workspace.
Future updates will include per-branch READMEs summarizing the concepts practiced.