La "Compilazione" Java

DOMANDA:

Java è un linguaggio interpretato o compilato?


RISPOSTA:

In realtà Java è un linguaggio ibrido, sia compilato che interpretato.

Diamo un'occhiata al processo globale:

Fasi della compilazione

1. Il primo step è il file .java che viene inviato al compilatore Java (javac) che lo trasforma in un file .class

2. Il file .class contiene il Bytecode, un codice intermedio tra il compilato e il file in chiaro ed è comprensibile a tutte le Java Virtual Machine (JVM) installate sui diversi dispositivi (ricordiamo che la JVM è specifica per l'architettura su cui è installata). Se provate ad aprire con il Blocco Note (o un qualunque editor di testo) un file .class vi renderete conto che il file è in parte intellegibile, in parte no.

3. La Java Virtual Machine internamente ha un Compilatore Just In Time (JIT) che si occupa di interpretare il Bytecode trasformandolo in codice comprensibile al calcolatore. Tale operazione non è svolta in un'unica soluzione ma per blocchi ottimizzati. I blocchi tradotti passano contemporaneamente anche un check per verificarne il contesto di sicurezza.

Concludendo, quindi, possiamo dire che Java è inizialmente compilato e successivamente interpretato.


Commenti

Post popolari in questo blog

Arrotondamento e troncamento in Java

Eclipse: Shortcuts (scorciatoie) da tastiera

Strutture dati: List, Set, Map

Creare un eseguibile Java