Diagramă de comparație
Bazele comparației | Eroare | Excepție |
---|---|---|
De bază | O eroare este cauzată de lipsa resurselor de sistem. | O excepție este cauzată din cauza codului. |
Recuperare | O eroare este irecuperabilă. | O excepție este recuperabilă. |
Cuvinte cheie | Nu există niciun mijloc de a face față unei erori de codul de program. | Excepțiile sunt tratate folosind trei cuvinte cheie "încercați", "prindeți" și "aruncați". |
Consecințe | Deoarece eroarea este detectată, programul se va anula anormal. | Ca o excepție este detectat, este aruncat și prins de "arunca" și "prinde" cuvinte cheie în mod corespunzător. |
Tipuri | Erori sunt clasificate ca un tip necontrolat. | Excepțiile sunt clasificate ca tip verificat sau necontrolat. |
Pachet | În Java, erorile sunt definite în pachetul "java.lang.Error". | În Java, excepțiile sunt definite în "java.lang.Exception". |
Exemplu | OutOfMemory, StackOverFlow. | Excepții verificate: NoSuchMethod, ClassNotFound. Excepții necontrolate: NullPointer, IndexOutOfBounds. |
Definiția Error
" Eroare " este o subclasă a clasei încorporate "Throwable". Erori sunt condițiile critice care apar din cauza lipsei resurselor de sistem și nu pot fi gestionate de codul programului. Erori nu pot fi recuperate prin nici un mijloc deoarece nu pot fi create, aruncate, prinse sau răspunsate. Erori sunt cauzate de eșecul catastrofal care de obicei nu poate fi gestionat de programul dumneavoastră.
Erori sunt întotdeauna de tip necontrolat, deoarece compilatorul nu are nicio cunoaștere despre apariția acestuia. Erori apar întotdeauna în mediul de funcționare. Eroarea poate fi explicată cu ajutorul unui exemplu, programul are o eroare de depășire a stivei, de eroare de memorie sau de eroare de eroare de sistem, acest tip de eroare se datorează sistemului. Codul nu este responsabil pentru astfel de erori. Consecința apariției erorii este că programul se termină anormal.
Definiția Exception
"Excepția" este, de asemenea, o subclasă a clasei încorporate "Throwable". Excepțiile sunt condițiile excepționale care apar într-un mediu de rulare. De cele mai multe ori, excepțiile sunt cauzate de codul programului nostru. Dar excepțiile pot fi tratate de programul însuși, deoarece excepțiile sunt recuperabile. Excepțiile sunt tratate prin utilizarea a trei cuvinte cheie "încercați", "prindeți", "aruncați". Sintaxa de scriere a unei excepții este:
încercați {// scrieți-vă codul aici} Captura (tip excepție) {// introduceți codul aici}
În codul de mai sus, codul scris în blocul de încercare este codul pe care doriți să îl monitorizați pentru excepție. Dacă excepția apare într-un bloc de încercare, este aruncat folosind cuvântul cheie "aruncați". Excepția aruncată poate fi prinsă de blocul "captură" al codului de mai sus. Tipul de excepție este tipul excepției care a apărut.
Cuvintele simple pot să spun că greșelile apărute din cauza codului necorespunzător se numesc excepții. De exemplu, dacă o clasă solicitată nu a fost găsită sau nu a fost găsită o metodă solicitată. Aceste tipuri de excepții se datorează codului din program; sistemul nu este responsabil pentru astfel de excepții. Excepțiile sunt clasificate ca "verificate" și "neconfirmate". Excepțiile necontrolate nu sunt în cunoașterea compilatorului așa cum se întâmplă în timpul execuției, în timp ce compilatorul are cunoștințele despre excepțiile verificate, deoarece acestea sunt cunoscute compilatorului în timpul procesului de compilare.
Diferențe cheie în eroare și excepție
- Eroare apare numai atunci când resursele sistemului sunt deficitare în timp ce o excepție este cauzată dacă un cod are o problemă.
- O eroare nu poate fi recuperată în timp ce o excepție poate fi recuperată prin pregătirea codului pentru a face față excepției.
- O eroare nu poate fi rezolvată niciodată, dar o excepție poate fi rezolvată de cod dacă codul care aruncă o excepție este scris în interiorul unui bloc de încercare și de captură.
- Dacă a apărut o eroare, programul va fi terminat anormal. Pe de altă parte, dacă se produce excepția, programul va arunca o excepție și va fi manipulat utilizând blocul de încercare și capturare.
- Erori sunt de tip necontrolat, adică eroare, nu sunt cunoscute de compilatoare, în timp ce o excepție este clasificată ca fiind verificată și necontrolată.
- Erori sunt definite în pachetul java.lang.Error, în timp ce o excepție este definită java.lang.Exception.
Concluzie:
Excepțiile sunt rezultatul greșelilor făcute în codarea programului, iar erorile sunt rezultatul funcționării necorespunzătoare a sistemului