Diferență cheie – Excepție bifată vs neverificată în Java
O excepție este o eroare de rulare. Există două tipuri de excepții cunoscute sub denumirea de excepții verificate și neverificate. Când apare o excepție verificată, aplicația Java este conectată la o resursă externă, cum ar fi un fișier, dispozitiv sau bază de date. Aceste excepții sunt verificate de compilator. Câteva exemple de excepții verificate sunt excepția IO și excepția FileNotFound. Când apare o excepție neverificată, aplicația nu este conectată la nicio resursă externă. Aceste excepții nu sunt verificate de compilator. Câteva exemple de excepții neverificate sunt Arithmetic Exception și ArrayOutOfBound Exception. Acest articol discută diferența dintre excepția bifată și neverificată în Java. Diferența cheie între excepția bifată și neverificată în Java este că o excepție bifată este verificată de compilator, în timp ce o excepție neverificată nu este verificată de compilator.
Ce este excepția bifată în Java?
Când apare o excepție verificată, aplicația Java este conectată la o resursă externă. Această resursă poate fi un dispozitiv, cum ar fi o imprimantă. Poate fi un fișier sau o bază de date. Prin urmare, aceste excepții sunt verificate de compilator. Excepția IO este o excepție verificată. Apare din cauza unei erori în dispozitiv. Când aplicația accesează un fișier care nu există, atunci va provoca o excepție FileNotFound. O aplicație poate fi conectată la o bază de date precum MySQL, Oracle etc. pentru a stoca date. Dacă a apărut o eroare legată de o bază de date, ar fi o excepție SQL. Acestea sunt câteva exemple de excepții verificate. În toate acestea, aplicația este conectată la o resursă exterioară. În excepțiile bifate, este obligatoriu să se gestioneze excepția. Dacă nu este gestionat, fluxul corect al programului va fi încheiat și fișierul de clasă nu va fi generat. Eroarea poate fi gestionată folosind blocul try, catch.
Figura 01: Gestionarea excepțiilor verificată
Conform celor de mai sus, FileReader a citit datele din fișier. Fișierul text1.txt nu există în locația specificată. Codul care poate da excepția este plasat în blocul try. Mesajul de tipărit se află în interiorul blocului de prindere. Deoarece nu există niciun fișier numit text1.txt, acest lucru provoacă o excepție FileNotFoundException. Utilizând gestionarea excepțiilor, mesajul este imprimat pe ecran.
Ce sunt excepțiile nebifate în Java?
Excepțiile nebifate nu sunt verificate de compilator. Spre deosebire de excepțiile bifate, cu excepțiile nebifate, aplicația Java nu este conectată la o resursă exterioară, cum ar fi fișierul, baza de date sau un dispozitiv. Unele excepții comune neverificate sunt excepțiile Arithmetic, ArrayOutOfBound și NullPointer.
int a=10, b=0;
int div=a/b;
System.out.println(div);
Acest lucru va cauza o excepție aritmetică din cauza scufundării „a” cu zero. Consultați codul de mai jos.
Figura 02: Gestionarea excepțiilor aritmetice
Conform programului de mai sus, variabila a este o valoare întreagă. Variabila b este 0. Împărțirea acestor două numere este o împărțire la zero. Prin urmare, va provoca o excepție aritmetică. Poate fi gestionat folosind blocul try-catch. Declarațiile care pot provoca excepția sunt plasate în blocul try. Mesajul care urmează să fie afișat se află în blocul de captură.
Consultați codul de mai jos.
int array1={1, 2, 3, 4, 5};
System.out.println(array1[5]);
Acest lucru va provoca o excepție. Array1 este o matrice cu 5 elemente. Indicele de pornire al matricei este zero. Imprimarea valorii indexului 5th provoacă o excepție, deoarece este în afara limitelor. Indicele maxim al matricei1 este 4.
Figura 03: Gestionarea excepțiilor ArrayOutOfBound
Conform programului de mai sus, matricea1 are 5 elemente. Imprimarea elementului cu indexul 6 va provoca o excepție, deoarece este în afara limitelor. Indexul maxim care poate fi stocat în array1 este 5. Mesajul de eroare se tipărește prin executarea blocului catch.
Care este asemănarea dintre excepția bifată și neverificată în Java
Atât excepția bifată, cât și cea nebifată în Java sunt tipuri de excepție în Java
Care este diferența dintre excepția bifată și neverificată în Java?
Excepție verificată versus neverificată în Java |
|
O excepție verificată este o eroare de rulare care este verificată de compilator. | O excepție neverificată este o eroare de rulare care nu este verificată de compilator. |
Apariție | |
Când apare o excepție verificată, aplicația Java este conectată la o resursă exterioară, cum ar fi fișierul, dispozitivul sau o bază de date. | Când apare o excepție neverificată, aplicația Java nu este conectată la o resursă externă. |
Exemple | |
IOException, FileNotFoundException, SQLException sunt câteva exemple de excepții verificate. | Excepția aritmetică, ArrayOutOfBoundException, NullPointerException sunt câteva exemple de excepții neverificate. |
Rezumat – Excepție verificată vs neverificată în Java
O excepție este un eveniment care întrerupe execuția fluxului de program. Există două tipuri de excepții. Ele sunt numite excepții verificate și excepții necontrolate. Acest articol a discutat despre diferența dintre o excepție verificată și excepții neverificate. Diferența dintre excepția bifată și neverificată în Java este că o excepție verificată este verificată de compilator, în timp ce o excepție neverificată nu este verificată de compilator. Deoarece excepțiile afectează fluxul corect de execuție a programului, este o practică bună de programare să le gestionați.