the Source code and generates a .class file known as Bytecode. Bytecode Universal Java’s Bytecode is the reason for it’s ability to be platform independent. Machine Language Portable Java Virtual Machine interprets the Bytecode and converts it into machine code required for its own platform.
JRE JAVA Runtime Environment contains JVM, class libraries and other supporting components. Class Loader Class Loader loads all the class files required to execute the program. Bytecode Verifier Bytecode Verifier verifies the bytecode to see if there are any security problems, stack overflow, etc. JIT Just In Time compiler helps in faster compilation of Java codes. JVM
bytecode into native code, which can be directly executed by a machine in which the JAVA program runs. From second runs, JIT caches are used. Secure The Bytecode is inspected properly mainly by the class loader and bytecode verifier. Hence a high level of security is achieved. Reliable Java has a feature of Garbage collection which helps in achieving better memory management.