Differenza tra errore ed eccezione in Java

Autore: Laura McKinney
Data Della Creazione: 2 Aprile 2021
Data Di Aggiornamento: 6 Maggio 2024
Anonim
Eccezioni:  THROWS / THROW in Java [TECNICHE DI PROGRAMMAZIONE]
Video: Eccezioni: THROWS / THROW in Java [TECNICHE DI PROGRAMMAZIONE]

Contenuto


"Throwable" funge da root per la gerarchia di errori e eccezioni di Java. "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 è causato dal tuo codice. Studiamo altre differenze tra errore ed eccezione insieme a una tabella di confronto.

  1. Tabella di comparazione
  2. Definizione
  3. Differenze chiave
  4. Conclusione

Tabella di comparazione

Base per il confrontoErroreEccezione
Di baseSi è verificato un errore a causa della mancanza di risorse di sistema.Si è verificata un'eccezione a causa del codice.
RecuperoUn errore è irrecuperabile.È possibile recuperare un'eccezione.
paroleNon è possibile gestire un errore tramite il codice del programma.Le eccezioni vengono gestite utilizzando tre parole chiave "prova", "cattura" e "lancio".
conseguenze
Quando viene rilevato l'errore, il programma verrà terminato in modo anomalo.Quando viene rilevata un'eccezione, viene generata e catturata dalle parole chiave "lancio" e "cattura" di conseguenza.
tipi Gli errori sono classificati come tipo non selezionato.Le eccezioni sono classificate come tipo selezionato o non selezionato.
Pacchetto In Java, gli errori sono definiti pacchetto "java.lang.Error".In Java, le eccezioni sono definite in "java.lang.Exception".
EsempioOutOfMemory, StackOverFlow.Eccezioni controllate: NoSuchMethod, ClassNotFound.
Eccezioni non selezionate: NullPointer, IndexOutOfBounds.


Definizione di errore

Errore"È una sottoclasse della classe integrata" 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 in alcun modo perché non possono essere creati, lanciati, catturati o risposto. Gli errori sono causati a causa di un catastrofico errore che di solito non può essere gestito dal programma.

Gli errori sono sempre di tipo non controllato, poiché il compilatore non ha alcuna conoscenza della sua occorrenza. Gli errori si verificano sempre nell'ambiente di runtime. L'errore può essere spiegato con l'aiuto di un esempio, il programma presenta 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 del verificarsi dell'errore è che il programma viene chiuso in modo anomalo.


Definizione di eccezione

"Exception" è anche una sottoclasse della classe incorporata "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 "prova", "cattura", "lancio". La sintassi di scrivere un'eccezione è:

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

Nel codice sopra, 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 utilizzando la parola chiave "lancio". L'eccezione generata può essere rilevata dal blocco "catch" del codice precedente. "Tipo di eccezione" è il tipo di eccezione che si è verificata.

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

  1. L'errore si verifica solo quando le risorse di sistema sono carenti, mentre un'eccezione è causata se un codice presenta qualche problema.
  2. Un errore non può mai essere recuperato, 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 è scritto all'interno di un blocco try and catch.
  4. Se si è verificato un errore, il programma verrà chiuso in modo anomalo. D'altra parte, se si verifica l'eccezione, il programma genererà un'eccezione e verrà gestito utilizzando il blocco try and catch.
  5. Gli errori sono di tipo non selezionato, ovvero l'errore non è a conoscenza dei compilatori, mentre un'eccezione è classificata come selezionata e non selezionata.
  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 di un funzionamento improprio del sistema