I am really struggling to understand the following thing
Previously I know:
When a Java program is compiled .class file will be generated. In that code is in the form of  bytes. Then the JVM will translate that byte code into machine understandable format.
Now I see in one of the questions in SO
A Just-In-Time (JIT) compiler is a feature of the run-time interpreter, that instead of interpreting bytecode every time a method is invoked, will compile the bytecode into the machine code instructions of the running machine
So here JIT is converting the bytecode to machine instructions. Then what is the use of JVM. We are able to do this with JIT. In my knowledge JIT is for only improving the performance of JVM.
 
     
     
     
     
    