Java erandid

Selles õpetuses õpime tundma Java erandeid. Käsitleme Java vigu, erandeid ja erinevat tüüpi erandeid.

Erandiks on ootamatu sündmus, mis toimub programmi käivitamisel. See mõjutab programmi juhiste voogu, mis võib põhjustada programmi ebatavalise katkestamise.

Erand võib tekkida mitmel põhjusel. Mõned neist on:

  • Vale kasutaja sisend
  • Seadme rike
  • Võrguühenduse kadumine
  • Füüsilised piirangud (kettamälu on otsas)
  • Koodivead
  • Puuduva faili avamine

Java erandite hierarhia

Siin on Java erandihierarhia lihtsustatud diagramm.

Nagu ülaltoodud pildilt näha, on Throwableklass hierarhias juurklass.

Pange tähele, et hierarhia jaguneb kaheks haruks: tõrge ja erand.

Vead

Vead tähistavad taastamatuid tingimusi, nagu Java virtuaalse masina (JVM) mälu otsa saamine, mälulekked, korstna ületäitumisvead, teegi kokkusobimatus, lõpmatu rekursioon jne.

Vead on tavaliselt programmeerija kontrolli alt väljas ja me ei peaks proovima vigu käsitleda.

Erandid

Erandeid saab programm tabada ja käsitleda.

Kui meetodi sees tekib erand, loob see objekti. Seda objekti nimetatakse erandobjektiks.

See sisaldab teavet erandi kohta, näiteks erandi nimi ja kirjeldus ning programmi olek erandi ilmnemisel.

Nende erandite käsitlemist õpime järgmises õpetuses. Selles õpetuses keskendume nüüd Java eri tüüpi eranditele.

Java erandite tüübid

Erandihierarhial on ka kaks haru: RuntimeExceptionja IOException.

1. RuntimeException

Runtime arvatud juhtub tõttu programmeerimine viga. Neid tuntakse ka kontrollimata eranditena .

Neid erandeid ei kontrollita kompileerimise ajal, vaid käitamise ajal. Mõned levinud käituse erandid on:

  • API ebaõige kasutamine - IllegalArgumentException
  • Nullkursori juurdepääs (muutuja initsialiseerimine puudub) - NullPointerException
  • Piiriväline massiivi juurdepääs - ArrayIndexOutOfBoundsException
  • Arvu jagamine 0-ga - ArithmeticException

Selle peale saab mõelda nii. "Kui see on käitamise aegne erand, siis olete selles süüdi".

Seda NullPointerExceptionei oleks juhtunud, kui oleksite enne selle kasutamist kontrollinud, kas muutuja on initsialiseeritud või mitte.

Seda ArrayIndexOutOfBoundsExceptionei oleks juhtunud, kui testiksite massiivi indeksit massiivi piiride suhtes.

2. IOException

An IOExceptionon tuntud ka kui kontrollitud erand . Kompilaator kontrollib neid kompileerimise ajal ja programmeerijal palutakse neid erandeid käsitleda.

Mõned kontrollitud erandite näited on järgmised:

  • Püüab avada faili, mida pole olemas, tulemuseks on FileNotFoundException
  • Proovitakse faili lõpust lugeda

Nüüd teame eranditest, erandite käsitlemisest õpime järgmises õpetuses.

Huvitavad Artiklid...