Dlaczego Java jest szybsza, gdy używa JIT vs. kompilacji do kodu maszynowego?
Słyszałem, że Java musi używać JIT, aby być szybkim. Ma to sens w porównaniu z interpretacją, ale dlaczego ktoś nie może stworzyć kompilatora wyprzedzającego, który generuje szybki kod Java? wiem ogcj
, ale nie sądzę, aby jego wyjście było zazwyczaj szybsze niż na przykład Hotspot.
Czy są rzeczy dotyczące języka, które utrudniają to? Myślę, że sprowadza się to tylko do tych rzeczy:
OdbicieŁadowanie klasczego mi brakuje? Jeśli uniknę tych funkcji, czy możliwe byłoby jednokrotne skompilowanie kodu Java do natywnego kodu maszynowego i wykonanie?