Aceste trei acronime descriu straturi imbricate ale platformei Java. Cel mai simplu mod de a vă aminti: JDK conține JRE, care conține JVM — fiecare adaugă capacități celui din interior.
Imbricarea
┌─────────────────────────── JDK (Development Kit) ───────────────────┐
│ javac (compiler), debugger, javadoc, jar, other dev tools │
│ ┌─────────────────────── JRE (Runtime Environment) ─────────────┐ │
│ │ Java class libraries (standard API: java.util, java.io, ...) │ │
│ │ ┌──────────────────── JVM (Virtual Machine) ───────────────┐ │ │
│ │ │ Executes bytecode, JIT compilation, garbage collection │ │ │
│ │ └───────────────────────────────────────────────────────────┘ │ │
│ └─────────────────────────────────────────────────────────────────┘ │
└────────────────────────────────────────────────────────────────────────┘
