Prezentare

Java excepțiile se împart în două categorii principale: verificat excepții și necontrolate excepții. În acest articol, vom oferi câteva exemple de cod cu privire la modul de utilizare a acestora.

excepții verificate

în general, excepțiile verificate reprezintă erori în afara controlului programului. De exemplu, constructorul FileInputStream aruncă FileNotFoundException dacă fișierul de intrare nu există.

Java verifică excepțiile verificate la compilare-time., prin urmare, ar trebui să folosim cuvântul cheie throws pentru a declara o excepție verificată:

putem folosi și un bloc try-catch pentru a gestiona o excepție verificată:

unele excepții comune verificate în Java sunt IOException, SQLException și ParseException.

clasa excepție este superclasa de excepții verificate. Prin urmare, putem crea un obicei verificat excepție prin extinderea Excepție:

public class IncorrectFileNameException extends Exception { public IncorrectFileNameException(String errorMessage) { super(errorMessage); }}

Debifat Excepții

Dacă un program aruncă o necontrolate excepție, reflectă o eroare în logica programului., De exemplu, dacă împărțim un număr de 0, Java va arunca ArithmeticException:

private static void divideByZero() { int numerator = 1; int denominator = 0; int result = numerator / denominator;}

Java nu verifica necontrolat excepții de la compilare. Mai departe, nu trebuie să declarăm excepții necontrolate într-o metodă cu cuvântul cheie throws. Și, deși codul de mai sus nu are erori în timpul compilării, va arunca ArithmeticException în timpul rulării.

unele excepții comune necontrolate în Java sunt NullPointerException, ArrayIndexOutOfBoundsException și IllegalArgumentException.,

clasa RuntimeException este superclasa tuturor excepțiilor necontrolate. Prin urmare, putem crea un obicei necontrolat excepție prin extinderea RuntimeException:

public class NullOrEmptyException extends RuntimeException { public NullOrEmptyException(String errorMessage) { super(errorMessage); }}

Când să Utilizeze Verificat Excepții și Necontrolate Excepții

este o bună practică de a utiliza excepții în Java, astfel încât să ne putem separa de tratare a erorilor de cod din cod regulat. Cu toate acestea, trebuie să decidem ce tip de excepție să aruncăm., Documentația Oracle Java oferă îndrumări cu privire la momentul utilizării excepțiilor verificate și a excepțiilor necontrolate:

„dacă se poate aștepta în mod rezonabil ca un client să recupereze dintr-o excepție, faceți din aceasta o excepție verificată. În cazul în care un client nu poate face nimic pentru a recupera de la excepția, face o excepție necontrolată.”

de exemplu, înainte de a deschide un fișier, putem valida mai întâi numele fișierului de intrare. Dacă numele fișierului de intrare al utilizatorului este nevalid, putem arunca o excepție personalizată verificată:

if (!isCorrectFileName(fileName)) { throw new IncorrectFileNameException("Incorrect filename : " + fileName );}

în acest fel, putem recupera sistemul acceptând un alt nume de fișier de intrare al utilizatorului., Cu toate acestea, dacă numele fișierului de intrare este un pointer nul sau este un șir gol, înseamnă că avem unele erori în cod. În acest caz, ar trebui să aruncăm o necontrolate excepție:

if (fileName == null || fileName.isEmpty()) { throw new NullOrEmptyException("The filename is null or empty.");}

Concluzie

În acest articol, am discutat despre diferența dintre bifat si debifat excepții. Am oferit, de asemenea, câteva exemple de cod pentru a arăta când să utilizați excepții verificate sau necontrolate.ca întotdeauna, tot codul găsit în acest articol poate fi găsit pe GitHub.,

începeți cu arc 5 și Primăvara Boot 2, prin Învețe Primăvară curs:

>> CHECK OUT CURS