//Java является всего лишь интерпретатором, хоть и неплохим.
//"всего лишь" - это как-то совсем дерзко о Яве, вам не кажется?
Забудем про преимущества Java.
Тогда выяснится, что у ней как в basic исходный код преобразуется (с большой натяжкой можно назвать это компиляцией) в байт-код. И уже байт-код выполняется - дешифрируется с помощью библиотеки (для чего и ставится JRE) и потом и выполняется.
Компиляцией всегда назывался процесс получения нативного кода, который запускался без всяких библиотек, либо с либами, но практически родными. При желании можно и используемые либы включать в модуль и тогда программа становится самодостаточной.