Cognizant interview question

Difference between JDK, JRE, and JVM.