JDK vs JRE vs JVM

JDK vs JRE vs JVM

JDK (Java Development Kit)JRE (Java Runtime Environment)JVM (Java Virtual Machine)
DefinitionDevelopment toolkit for JavaRuntime environment for JavaAbstract machine to run Java bytecode
ComponentsJRE + development tools (compiler, etc.)JVM + core librariesBytecode interpreter, JIT compiler
UsageWriting, compiling, debugging Java appsRunning Java applicationsExecuting Java bytecode