Q.4.Какие улучшения производительности могут сделать компиляторы, которые JIT не могут (или не делают)?
Компилятор JIT может выполнять глобальную оптимизацию.Компилятор байт-кода не может сделать это, потому что он не может видеть все библиотеки, загруженные во время работы программы.
JIT-компилятор может выполнять оптимизацию ветвления на основе наблюдаемого поведения текущего выполнения программы.Компилятор байт-кода не может этого сделать, потому что к моменту запуска программы компилятор уже не уместен.