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 topicsObjects, Classes & OOP Design
Classes, inheritance, interfaces, records, enums — and the design discipline that makes them work.
11 topicsGenerics
Compile-time type safety: type parameters, bounds, wildcards, and the consequences of erasure.
7 topicsCollections Framework
Lists, sets, maps, and queues — their implementations, internals, and how to choose between them.
9 topicsFunctional Programming & Streams
Lambdas, method references, and the Stream API: declarative data processing pipelines.
9 topicsExceptions, Assertions & Logging
Failing well: the exception hierarchy, resource cleanup, error-handling doctrine, and diagnostics.
5 topicsI/O, Serialization & Networking
Byte and character streams, NIO files and buffers, serialization hazards, regex, and network APIs.
8 topicsConcurrency
Threads, locks, the memory model, executors, and the discipline of building correct concurrent code.
13 topicsJVM Internals & Memory
What actually runs your code: class loading, bytecode, memory layout, garbage collection, and JIT.
8 topicsPerformance & Optimization
Measurement-driven optimization: benchmarking, profiling, GC tuning, observability, and scalability.
9 topicsPlatform & Advanced APIs
The wider JDK: date/time, annotations, reflection, modules, JDBC, i18n, security, and native interop.
8 topicsModern Java Evolution
The post-Java-8 platform: releases, type inference, pattern matching, virtual threads, and what is next.
8 topics