Raccomandato, 2024

Scelta Del Redattore

Differenza tra errore ed eccezione in Java

"Throwable" agisce come root per l'errore di Java e la gerarchia delle eccezioni. "Errore" è una condizione critica che non può essere gestita dal codice del programma. "Eccezione" è la situazione eccezionale che può essere gestita dal codice del programma. La differenza significativa tra errore ed eccezione è che un errore è causato dalla mancanza di risorse di sistema e un'eccezione è causata dal codice. Cerchiamo di studiare altre differenze tra errore ed eccezione insieme a un grafico di confronto.

Grafico comparativo

Base per il confrontoErroreEccezione
Di baseUn errore è causato dalla mancanza di risorse di sistema.Un'eccezione è causata dal codice.
RecuperoUn errore è irrecuperabile.Un'eccezione è recuperabile.
paroleNon c'è modo di gestire un errore dal codice del programma.Le eccezioni vengono gestite utilizzando tre parole chiave "try", "catch" e "throw".
conseguenze
Quando viene rilevato l'errore, il programma termina in modo anomalo.Quando viene rilevata un'eccezione, viene lanciata e catturata dalle parole chiave "lancia" e "cattura" corrispondentemente.
tipiGli errori sono classificati come tipo non controllato.Le eccezioni sono classificate come tipo spuntato o non controllato.
PacchettoIn Java, gli errori sono definiti pacchetto "java.lang.Error".In Java, sono definite eccezioni in "java.lang.Exception".
EsempioOutOfMemory, StackOverFlow.Eccezioni controllate: NoSuchMethod, ClassNotFound.
Eccezioni non selezionate: NullPointer, IndexOutOfBounds.

Definizione di errore

" Errore " è una sottoclasse della classe built-in "Throwable". Gli errori sono le condizioni critiche che si verificano a causa della mancanza delle risorse di sistema e non possono essere gestite dal codice del programma. Gli errori non possono essere recuperati con alcun mezzo perché non possono essere creati, lanciati, catturati o replicati. Gli errori sono causati a causa di un errore catastrofico che di solito non può essere gestito dal programma.

Gli errori sono sempre di tipo non controllato, in quanto il compilatore non ha alcuna conoscenza in merito alla sua occorrenza. Gli errori si verificano sempre nell'ambiente di runtime. L'errore può essere spiegato con l'aiuto di un esempio, il programma ha un errore di overflow dello stack, un errore di memoria insufficiente o un errore di crash del sistema, questo tipo di errore è dovuto al sistema. Il codice non è responsabile di tali errori. La conseguenza dell'errore è che il programma viene terminato in modo anomalo.

Definizione di eccezione

"Exception" è anche una sottoclasse di classe built-in "Throwable". Le eccezioni sono le condizioni eccezionali che si verificano in un ambiente di runtime. La maggior parte delle volte le eccezioni sono causate dal codice del nostro programma. Ma le eccezioni possono essere gestite dal programma stesso, poiché le eccezioni sono recuperabili. Le eccezioni vengono gestite utilizzando tre parole chiave "try", "catch", "throw". La sintassi di scrittura di un'eccezione è:

 prova {// scrivi qui il tuo codice} Catch (tipo di eccezione) {// scrivi qui il tuo codice} 

Nel codice precedente, il codice scritto nel blocco try è il codice che si desidera monitorare per l'eccezione. Se l'eccezione si verifica in un blocco try, viene generata usando la parola chiave "throw". L'eccezione generata può essere catturata dal blocco "catch" del codice precedente. "Tipo di eccezione" è il tipo di eccezione che si è verificata.

In parole semplici possiamo dire che gli errori avvenuti a causa del codice improprio sono chiamati eccezioni. Ad esempio, se una classe richiesta non viene trovata o non viene trovato un metodo richiesto. Questi tipi di eccezioni sono dovuti al codice nel programma; il sistema non è responsabile per questo tipo di eccezioni. Le eccezioni sono classificate come "spuntate" e "deselezionate". Le eccezioni non controllate non sono a conoscenza del compilatore come si verificano durante il runtime, mentre il compilatore ha la conoscenza delle eccezioni controllate come sono note al compilatore durante la compilazione.

Differenze chiave in errore ed eccezione

  1. L'errore si verifica solo quando le risorse di sistema sono carenti mentre, viene generata un'eccezione se un codice presenta qualche problema.
  2. Un errore non può mai essere ripristinato mentre, un'eccezione può essere recuperata preparando il codice per gestire l'eccezione.
  3. Un errore non può mai essere gestito, ma un'eccezione può essere gestita dal codice se il codice che genera un'eccezione viene scritto all'interno di un blocco try and catch.
  4. Se si è verificato un errore, il programma verrà terminato in modo anomalo. D'altra parte, se si verifica un'eccezione, il programma genera un'eccezione e viene gestito utilizzando il blocco try e catch.
  5. Gli errori sono di tipo non controllato, ovvero l'errore non è a conoscenza dei compilatori, mentre un'eccezione è classificata come selezionata e deselezionata.
  6. Gli errori sono definiti nel pacchetto java.lang.Error mentre, un'eccezione è definita java.lang.Exception.

Conclusione:

Le eccezioni sono il risultato di errori commessi nella codifica del programma e gli errori sono il risultato del cattivo funzionamento del sistema

Top