jvm

Java

OOP, collections and streams, concurrency and the JVM

16 topics 6 sections Java 25 LTS beginner → advanced
All beginner intermediate advanced
show All Unread Read

01 · Basics

6 topics

02 · OOP and generics

10 topics
Annotations Attach structured metadata to Java declarations and type uses, then consume it correctly through compiler checks, processing, or reflection. intermediate 13 min Generics Java generics express type relationships across an API; understand bounds, wildcards, and erasure to design flexible, type-safe interfaces. intermediate 16 min Inner classes Distinguish nested and inner classes, understand enclosing instances, local capture, and anonymous classes, and avoid lifecycle and semantic bugs. intermediate 14 min Interfaces Java interfaces define replaceable behavior contracts; learn member rules, default-method conflicts, functional interfaces, and safe API evolution. intermediate 14 min Object-oriented programming Java objects organize state and behavior behind explicit boundaries; learn invariants, dynamic dispatch, substitutability, and composition. intermediate 15 min Records Model transparent data carriers with records, including derived members, compact constructors, shallow immutability, and record-pattern boundaries. intermediate 15 min Reflection Inspect runtime types and invoke members in Java 25 while handling exact lookup, module access, exception wrapping, and dynamic proxies correctly. advanced 18 min Sealed classes Model closed type hierarchies with sealed, permits, and exhaustive pattern switches while handling extension, modules, and API evolution correctly. intermediate 13 min Type erasure Understand how Java generics become executable JVM types, and where type tokens, bridge methods, heap pollution, and runtime checks meet their limits. advanced 15 min Wildcards and PECS Java wildcards define safe read and write capabilities at generic API boundaries; use PECS, capture helpers, and named type parameters without unsafe casts. intermediate 19 min