Java izņēmumi

Šajā apmācībā mēs uzzināsim par Java izņēmumiem. Mēs aplūkosim kļūdas, izņēmumus un dažāda veida izņēmumus Java.

Izņēmums ir negaidīts notikums, kas rodas programmas izpildes laikā. Tas ietekmē programmas instrukciju plūsmu, kas var izraisīt programmas neparastu pārtraukšanu.

Izņēmums var rasties daudzu iemeslu dēļ. Daži no tiem ir:

  • Nederīga lietotāja ievade
  • Ierīces kļūme
  • Tīkla savienojuma zudums
  • Fiziskie ierobežojumi (diska atmiņā nav vietas)
  • Kodu kļūdas
  • Tiek atvērts nepieejams fails

Java izņēmumu hierarhija

Šeit ir vienkāršota Java izņēmumu hierarhijas diagramma.

Kā redzams no attēla iepriekš, Throwableklase ir saknes klase hierarhijā.

Ņemiet vērā, ka hierarhija tiek sadalīta divās nozarēs: kļūda un izņēmums.

Kļūdas

Kļūdas atspoguļo neatjaunojamus apstākļus, piemēram, Java virtuālās mašīnas (JVM) atmiņas trūkumu, atmiņas noplūdes, kaudzes pārpildes kļūdas, bibliotēkas nesaderību, bezgalīgu rekursiju utt.

Kļūdas parasti nevar kontrolēt programmētājs, un mums nevajadzētu mēģināt rīkoties ar kļūdām.

Izņēmumi

Izņēmumus programma var noķert un apstrādāt.

Ja kādā metodē rodas izņēmums, tas rada objektu. Šo objektu sauc par izņēmuma objektu.

Tajā ir informācija par izņēmumu, piemēram, izņēmuma nosaukums un apraksts, kā arī programmas stāvoklis izņēmuma iestāšanās laikā.

Mēs uzzināsim, kā rīkoties ar šiem izņēmumiem, nākamajā apmācībā. Šajā apmācībā mēs tagad pievērsīsimies dažāda veida Java izņēmumiem.

Java izņēmumu veidi

Izņēmumu hierarhijai ir arī divas filiāles: RuntimeExceptionun IOException.

1. RuntimeException

Izņēmums Runtime notiek sakarā ar programmēšanas kļūdu. Tos sauc arī par nepārbaudītiem izņēmumiem .

Šie izņēmumi netiek pārbaudīti kompilēšanas laikā, bet gan izpildes laikā. Daži no izplatītākajiem izpildlaika izņēmumiem ir:

  • Nepareiza API izmantošana - IllegalArgumentException
  • Nulles piekļuve rādītājam (trūkst mainīgā inicializācijas) - NullPointerException
  • Ārpus robežas piekļuve masīvam - ArrayIndexOutOfBoundsException
  • Skaitļa dalīšana ar 0 - ArithmeticException

Jūs varat domāt par to šādā veidā. "Ja tas ir izpildlaika izņēmums, tā ir jūsu vaina".

Tas NullPointerExceptionnebūtu noticis, ja pirms tā izmantošanas būtu pārbaudīts, vai mainīgais ir inicializēts.

ArrayIndexOutOfBoundsExceptionNebūtu noticis, ja pārbaudīta masīva indeksu pret masīvu robežas.

2. IOException

An IOExceptionir pazīstams arī kā pārbaudīts izņēmums . Kompilators tos pārbauda sastādīšanas laikā, un programmētājs tiek aicināts rīkoties ar šiem izņēmumiem.

Daži pārbaudīto izņēmumu piemēri ir:

  • Mēģinot atvērt failu, kas neeksistē, rodas FileNotFoundException
  • Mēģina nolasīt faila beigas

Tagad mēs zinām par izņēmumiem, par apmācību ar izņēmumiem uzzināsim nākamajā apmācībā.

Interesanti raksti...