JRE stands for Java Runtime Environment and this is where the JVM resides along with all the class libraries and other supporting components.
The source code is converted into bytecode and this bytecode is stored in class files. When the program is run, the class file is loaded , verified and the JVM interprets the bytecode into machine code which will be executed by the machine in which the program runs.
The JRE loads the class file(done by the class loader)
The JRE verifies the bytecode.(done by the bytecode verifier)
The JRE interprets the bytecode.(done by the JVM)