Sun supplies JIT ENGINE for bytecode which is part of the JVM it compiles the bytecode into executable code in real time on piece-by-piece basis demand basis. JIT compiles code as it is needed during execution.
The just-in-time compiler compiles byte code into native machine language when it first encounters it and then reuses that compiled code rather than recompiling it again. This give performance gains over the interpreter model which interprets the byte code every time it encounters it.