Hello friends, I will be very very very thankfull if anybody can tell me clearly the difference between the following terms related to java, 1)jvm 2)jre 3)jdk 4)jit 5)premordial classloader 6)non-premordial classloader
Thanks and Regards, Pankaj [ August 05, 2007: Message edited by: Pankaj Wakchaure ]
JVM = Java Virtual Machine. The JVM is the "motor" of Java: it is the software that reads and executes Java bytecode.
JRE = Java Runtime Environment. The JRE is the JVM and everything that surrounds it which is needed to run Java programs: the standard library and lots of supporting files. So you could see the JVM as the motor, and the JRE as the complete car.
JDK = Java Development Kit. The JDK is the JRE plus extra tools that you need to develop Java programs, such as the Java compiler.
JIT = Just-In-Time. The JVM contains a compiler, which translates Java bytecode to native machine code for the CPU that the program is running on. This is called a Just-In-Time compiler, because it works at runtime, while the program is running - at the latest possible moment.
I don't know what exactly is meant with "premordial" and "non-premordial" classloaders. A classloader is a part of the Java runtime environment which loads classes from *.class files and makes them ready to be used by Java programs.
class loader is responsible for loading all the programmer written .class files(i guess it is premordial class loader) bootstrap class loader is responsible for loading library .class files such as Object.class,String.class etc (I guess it is non-premordial classloader)