The JDK is the superset of JRE. JDK has the necessary tools like javac java.exe debugger etc + JRE. But JRE has a particular implementation of JVM.
My assumption is
you are right java.exe is the interpreter for JVM (java virtual machine) and JVM is where your code gets executed by communicating with the underlying OS