Ricerca nel sito web

Comprensione del compilatore Java e della Java Virtual Machine - Parte 4


Fino ad ora abbiamo esaminato il funzionamento e la struttura del codice di Java e la classe, il metodo principale e il controllo del loop in Java. Qui in questo post vedremo Cos'è Java Compiler e Java Virtual Machine. A cosa servono e i loro ruoli.

Cos'è il compilatore Java

Java è un linguaggio fortemente tipizzato, il che significa che la variabile deve contenere il giusto tipo di dati. In un linguaggio fortemente tipizzato una variabile non può contenere un tipo di dati errato. Questa è una funzionalità di sicurezza molto ben implementata nel linguaggio di programmazione Java.

Il compilatore Java è responsabile del controllo delle variabili per eventuali violazioni nella conservazione del tipo di dati. Potrebbero verificarsi alcune eccezioni in fase di esecuzione che sono obbligatorie per la funzionalità di associazione dinamica di Java. Durante l'esecuzione del programma Java, è possibile includere nuovi oggetti che prima non esistevano, quindi per avere un certo grado di flessibilità sono consentite alcune eccezioni nel tipo di dati che una variabile può contenere.

Il compilatore Java imposta il filtro per quelle parti di codice che non verranno mai compilate tranne che per i commenti. Il compilatore non analizza i commenti e li lascia così com'è. Il codice Java supporta tre tipi di commenti all'interno del programma.


1. /* COMMENT HERE */
2. /** DOCUMENTATION COMMENT HERE */
3. // COMMENT HERE

Tutto ciò che si trova tra /* e */ o /** e */ o dopo // viene ignorato dal compilatore Java.

Java Compiler è responsabile del controllo rigoroso di qualsiasi violazione della sintassi. Java Compiler è progettato per essere un compilatore di bytecode, ovvero crea un file di classe dal file di programma effettivo scritto esclusivamente in bytecode.

Java Compiler è la prima fase di sicurezza. È la prima linea di difesa in cui viene controllato il tipo di dati errato nella variabile. Un tipo di dato errato può causare danni al programma e all'esterno di esso. Inoltre il compilatore controlla se qualche pezzo di codice tenta di richiamare un pezzo di codice limitato come la classe privata. Limita l'accesso non autorizzato a codice/classe/dati critici.

Java Compiler produce bytecode/file di classe che sono neutri dalla piattaforma e dal punto di vista architettonico che richiedono l'esecuzione di JVM e verrà letteralmente eseguito su qualsiasi dispositivo/piattaforma/architettura.

Cos'è la Java Virtual Machine (JVM)

Java Virtual Machine è la linea di sicurezza successiva che aggiunge un livello aggiuntivo tra l'applicazione Java e il sistema operativo. Inoltre controlla il file di classe che è stato sottoposto a controllo di sicurezza e compilato da Java Compiler, se qualcuno ha manomesso il file di classe/bytecode per limitare l'accesso a dati critici non autorizzati.

Java Virtual Machine interpreta il bytecode caricando il file di classe nel linguaggio macchina.

JVM è responsabile di funzioni come caricamento e archiviazione, calcolo aritmetico, conversione di tipo, creazione di oggetti, manipolazione di oggetti, trasferimento di controllo, generazione di eccezioni, ecc.

Il modello funzionante di Java in cui Java Compiler compila il codice in calssfile/bytecode e quindi Java Virtual Machine esegue il classfile/bytecode. Questo modello garantisce che il codice venga eseguito ad alta velocità e il livello aggiuntivo garantisce la sicurezza.

Quindi cosa ne pensi: Java Compiler o Java Virtual Machine svolgono compiti più importanti? Un programma Java deve essere eseguito essenzialmente su entrambe le superfici (compilatore e JVM).

Questo post riassume il ruolo del compilatore Java e della JVM. Tutti i vostri suggerimenti sono benvenuti nei commenti qui sotto. Stiamo lavorando al prossimo post “Approccio orientato agli oggetti di Java”. Fino ad allora restate sintonizzati e connessi a TecMint. Metti mi piace, condividici e aiutaci a diffonderci.