Estos tres acrónimos describen capas anidadas de la plataforma Java. La forma más sencilla de recordarlo: JDK contiene JRE, que contiene JVM — cada uno añade capacidades al que está dentro.
El anidamiento
┌─────────────────────────── 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 │ │ │
│ │ └───────────────────────────────────────────────────────────┘ │ │
│ └─────────────────────────────────────────────────────────────────┘ │
└────────────────────────────────────────────────────────────────────────┘
