Atšķirība starp kļūdu un izņēmumu Java

Autors: Laura McKinney
Radīšanas Datums: 2 Aprīlis 2021
Atjaunināšanas Datums: 6 Maijs 2024
Anonim
Difference Between Exception and Error | Learn Coding
Video: Difference Between Exception and Error | Learn Coding

Saturs


“Throvable” darbojas kā Java kļūdu un izņēmumu hierarhijas sakne. “Kļūda” ir kritisks stāvoklis, kuru nevar novērst ar programmas kodu. “Izņēmums” ir ārkārtas situācija, kuru var novērst ar programmas kodu. Būtiska atšķirība starp kļūdu un izņēmumu ir tā, ka an kļūda rodas sistēmas resursu trūkuma dēļ, un izņēmums rodas jūsu koda dēļ. Pētīsim citas atšķirības starp kļūdu un izņēmumu, kā arī salīdzināšanas diagrammu.

  1. Salīdzināšanas tabula
  2. Definīcija
  3. Galvenās atšķirības
  4. Secinājums

Salīdzināšanas tabula

Salīdzināšanas pamatsKļūdaIzņēmums
PamataKļūda ir radusies sistēmas resursu trūkuma dēļ.Kods rada izņēmumu.
AtgūšanaKļūda nav labojama.Izņēmums ir atgūstams.
Atslēgas vārdiNav līdzekļu, lai apstrādātu kļūdu ar programmas kodu.Izņēmumi tiek apstrādāti, izmantojot trīs atslēgvārdus “izmēģināt”, “noķert” un “iemest”.
Sekas
Atklājot kļūdu, programma tiks pārtraukta neparasti.Tā kā tiek konstatēts izņēmums, tas tiek izmests un nozvejots attiecīgi ar atslēgvārdiem "mest" un "noķert".
Veidi Kļūdas klasificē kā nekontrolētu veidu.Izņēmumi tiek klasificēti kā pārbaudīti vai nekontrolēti.
Komplekts Java programmā kļūdas ir definētas kā "java.lang.Error" pakotne.Java valodā izņēmumi ir definēti sadaļā "java.lang.Exception".
PiemērsOutOfMemory, StackOverFlow.Pārbaudīti izņēmumi: NoSuchMethod, ClassNotFound.
Neatzīmētie izņēmumi: NullPointer, IndexOutOfBounds.


Kļūdas definīcija

Kļūda”Ir iebūvētās klases“ metināms ”apakšklase. Kļūdas ir kritiski apstākļi, kas rodas sistēmas resursu trūkuma dēļ, un to nevar novērst ar programmas kodu. Kļūdas nevar nekādā veidā atgūt, jo tās nevar izveidot, izmest, noķert vai atbildēt. Kļūdas rodas katastrofiskas kļūmes dēļ, ko parasti nevar novērst jūsu programma.

Kļūdas vienmēr ir nekontrolētas, jo kompilatoram nav zināšanu par to rašanos. Kļūdas vienmēr notiek izpildes laika vidē. Kļūdu var izskaidrot, izmantojot piemēru, programmā ir kļūda kaudzes pārpildē, atmiņas atmiņā vai sistēmas avārijas kļūda, šāda veida kļūda ir saistīta ar sistēmu. Kods nav atbildīgs par šādām kļūdām. Kļūdas sekas ir tādas, ka programma tiek pārtraukta neparasti.

Izņēmuma definīcija

“Izņēmums” ir arī iebūvētās klases “metināms” apakšklase. Izņēmumi ir ārkārtas apstākļi, kas rodas izpildes laikā. Lielāko daļu gadījumu izņēmumu iemesls ir mūsu programmas kods. Bet ar izņēmumiem var rīkoties pati programma, jo izņēmumi ir atgūstami. Izņēmumi tiek apstrādāti, izmantojot trīs atslēgvārdus “izmēģināt”, “noķert”, “iemest”. Izņēmuma rakstīšanas sintakse ir:


mēģiniet {// rakstīt savu kodu šeit} Noķert (izņēmuma veids) {// uzrakstiet savu kodu šeit}

Iepriekš tekstā kods, kas ierakstīts mēģinājuma blokā, ir kods, kuru vēlaties uzraudzīt izņēmuma gadījumā. Ja izņēmums notiek mēģinājuma blokā, tas tiek izmests, izmantojot atslēgvārdu “mest”. Izmesto izņēmumu var noķert iepriekš minētā koda “noķeršanas” bloks. “Izņēmuma tips” ir notikušā izņēmuma veids.

Vienkāršos vārdos mēs varam teikt, ka kļūdas, kas radušās nepareiza koda dēļ, sauc par izņēmumiem. Piemēram, ja pieprasītā klase nav atrasta vai pieprasītā metode nav atrasta. Šāda veida izņēmumi ir saistīti ar programmas kodu; sistēma nav atbildīga par šāda veida izņēmumiem. Izņēmumi tiek klasificēti kā “pārbaudīti” un “nekontrolēti”. Nepārbaudīti izņēmumi nav zināmi kompilatoram, jo ​​tie rodas izpildlaika laikā, turpretī kompilatoram ir zināšanas par pārbaudītajiem izņēmumiem, jo ​​tie ir zināmi kompilatoram kompilācijas laikā.

  1. Kļūda rodas tikai tad, ja trūkst sistēmas resursu, turpretī izņēmums tiek noteikts, ja ar kodu ir kāda problēma.
  2. Kļūdu nekad nevar atgūt, turpretī izņēmumu var atgūt, sagatavojot kodu, lai apstrādātu izņēmumu.
  3. Kļūdu nekad nevar novērst, taču ar izņēmumu var rīkoties ar kodu, ja kods, kas izmet izņēmumu, ir ierakstīts izmēģināšanas un noķeršanas blokā.
  4. Ja ir notikusi kļūda, programma tiks pārtraukta neparasti. No otras puses, ja rodas izņēmums, programma izmet izņēmumu, un tas tiek apstrādāts, izmantojot izmēģināšanas un noķeršanas bloku.
  5. Kļūdas ir nekontrolētas, t.i., kompilatori nezina, bet izņēmums tiek klasificēts kā pārbaudīts un nekontrolēts.
  6. Kļūdas ir definētas pakotnē java.lang.Error, turpretī izņēmums ir java.lang.Exception.

Secinājums:

Izņēmumi ir kļūdu rezultāti, kas izdarīti programmas kodēšanā, un kļūdas ir nepareizas sistēmas darbības rezultāts.