Topics

12 domains, 102 topics — distilled from curated books. Pick a domain to start.

Language Fundamentals

Types, operators, strings, control flow, and arrays — the bedrock of every Java program.

7 topics

Objects, Classes & OOP Design

Classes, inheritance, interfaces, records, enums — and the design discipline that makes them work.

11 topics

Generics

Compile-time type safety: type parameters, bounds, wildcards, and the consequences of erasure.

7 topics

Collections Framework

Lists, sets, maps, and queues — their implementations, internals, and how to choose between them.

9 topics

Functional Programming & Streams

Lambdas, method references, and the Stream API: declarative data processing pipelines.

9 topics

Exceptions, Assertions & Logging

Failing well: the exception hierarchy, resource cleanup, error-handling doctrine, and diagnostics.

5 topics

I/O, Serialization & Networking

Byte and character streams, NIO files and buffers, serialization hazards, regex, and network APIs.

8 topics

Concurrency

Threads, locks, the memory model, executors, and the discipline of building correct concurrent code.

13 topics

JVM Internals & Memory

What actually runs your code: class loading, bytecode, memory layout, garbage collection, and JIT.

8 topics

Performance & Optimization

Measurement-driven optimization: benchmarking, profiling, GC tuning, observability, and scalability.

9 topics

Platform & Advanced APIs

The wider JDK: date/time, annotations, reflection, modules, JDBC, i18n, security, and native interop.

8 topics

Modern Java Evolution

The post-Java-8 platform: releases, type inference, pattern matching, virtual threads, and what is next.

8 topics