OqPoWah.com

Java: izjeme in njihovo ravnanje

Vsak program bo deloval stabilno samo, če je izvorna koda debugirana in ni pogojev, ki bi lahko povzročili nepredvidene situacije. Proces ulova možnih napak se izvaja v fazi programiranja. Če želite to narediti, razvijalec upošteva vseh pričakovanih rezultatov in poskuša omejiti vpliv napake, tako, da ne more vplivati ​​na delovanje programa, ali vodi do njenega razpada.

Ko boste morda morali obravnavati izjeme

V Java, lahko izjema se zaradi nepravilnega vnos uporabnika povzročil, ni potrebe za vir ali nenadne programa omrežja odklop. Za udobno uporabo aplikacije, ki jo ustvari razvijalec, je potrebno nadzorovati pojav izjemnih situacij. Potrošnik ne bi bilo treba čakati, da zaprete aplikacijo, da izgubite podatke kot posledica neobravnavane izjeme, ali pa samo del prikaže sporočilo, da je šlo nekaj narobe.

java izjeme

Ravnanje z izjemo Java

Kaj je treba upoštevati? Jezik Java ima lastno vgrajeno funkcijo upravljanja izjem. Seveda se v fazi priprave ujame velik odstotek napak, ko bo sistem samodejno sporočil, da ga ni več mogoče uporabiti. Vendar obstajajo tudi takšne izjeme, ki se pojavijo med delovanjem programa. Razvijalec bi moralo biti omogočeno, da jo predvideti in oblikovati kodo, tako da ni povzročil napako, in jo obravnavajo na poseben način in predajo nadzora na drugo vejo.

V Javi se prevajalnik nalaga tako ujemanje izjem, zato so znane značilne težave in imajo svojo lastno standardno izvedbo.

Tipične izjeme

Najenostavnejši primer, v katerem lahko dobite izjemo, je delitev. Kljub svoji preprostosti, v izrazu, kot delitelju, lahko obstaja nič, kar bo pripeljalo do napake. No, če je njegov videz mogoče napovedati prej in preprečiti. Vendar ta možnost ni vedno na voljo, zato je treba ujemajočo izjemo organizirati neposredno, ko se pojavi "delitev z ničlo".

V Javi mehanizem za obdelavo napak izgleda tako:

  • Izključni predmet se ustvari na kopici, tako kot vsi drugi;
  • naravni tok programa je prekinjen;
  • mehanizem za izjeme skuša najti alternativen način za nadaljevanje kode;
  • Iskanje kraja varne izvedbe programa v vodniku, bo delo obnovljeno ali pa bo izjema izvedena na poseben način.

Najpreprostejši primer ustvarjanja napake je lahko takšen:

če (a == null)

vrgli novo NullPointerException ();

Tukaj se preveri spremenljivka a za inicializacijo, npr. ni enako ničelni sklic. V primeru, da pride do takšne situacije in je potrebna posebna obdelava, je izločena izmet z novim NullPointerException ().

Nekaj ​​podrobnosti o ključnih besedah

Pri delu z izjemami pogosto uporabljate ključne besede Java za sklicevanje na dejanje. V tem programskem jeziku jih je pet:

  • Poskusi. Ta ključna beseda je že naletel in pomeni, da gre za odsek kode, ki lahko povzroči izjemo. Blok je omejen na zavihane zaponke {}.
  • Ujemi. Povezuje ustrezno vrsto izjeme in ga ustrezno obravnava.
  • Nazadnje. Ta ključna beseda je neobvezna in služi za izvrševanje kosa kode, ki je v vsakem primeru potreben, čeprav nobena izjema ni prestrežena. Doda se takoj po poskusnem bloku.
  • Vrzi - omogoča, da ustvarite izjeme Java kjerkoli v kodi.
  • Vrzi je ključna beseda, ki je v podpisu metode. To pomeni, da lahko nadaljnja koda vrne izjemo iz Jave določene vrste. Takšna oznaka služi kot signal za razvijalce, kar morate imeti v mislih - metoda morda ne bo delovala, kot je bilo pričakovano.

Ujemi s poskusom

Vlečenje v izjemo Java seveda predpostavlja, da bo obravnavano na poseben način. Najprimernejši način za to je, če je razdelek kode razdeljen v blok. Kateri morebiti vsebuje izjemo. Ko zaženete to kodo, bo virtualni stroj našli nepričakovano situacijo, razumeti, da obstaja kritična blok in prenese nadzor na postajo z obdelavo.

V Javi se koda zavije v poseben blok bloka, v katerega je mogoče izločiti izjemo. Tako naenkrat ustvarja več nepričakovanih situacij, ki bodo ujete na enem mestu, ne da bi se plazile vzdolž kode.

Najbolj značilna koda z obdelovalni blok izgleda takole:

poskusite {

// To bo določilo kodo, ki lahko vrne izjemo

} ulov (Exception_Type_1 identifikator_1) {

// Tu je izjema obdelana glede na vrsto in pogoje;

} ulov (Extraction_type_2 identifier_2) {

// Tu je izjema obdelana glede na vrsto in pogoje;

}

Ključna beseda ulova sporoča, da je treba kodo, podvrženo preverjanju izjem, obdelati, kot je opisano spodaj, pod pogojem, da se ujema z njegovim tipom. Identifikator lahko uporabite znotraj blokov za obdelavo kot argumente.

Nazadnje

Kot je razjasnilo iz prejšnjega poglavja, ulov blokira izjeme in jih obdeluje. Ampak zelo pogosto obstaja situacija, ko bi morala izvršiti nekaj kod, ne glede na to, ali so bile ujete napake. Za to končno ključno besedo obstaja. Uporablja se za povečanje vrednosti različnih števcev, zaprte datoteke ali povezave z omrežjem.

java izjeme ravnanje

Na tem področju je izumljenih več blokov ulova z izumljenimi metodami ulova izjem. Na primer, koda v poskusu ustvarja nepričakovano situacijo tipa Cold. Potem se izraz "ujeti hladno!" In "Je to nekaj, na kar se lahko navijamo?" Bo prikazano v konzoli. To pomeni, da se končni blok v vsakem primeru izvrši.

Pravzaprav obstaja način, da se končno ne bi iztekel. Povezan je s prenehanjem virtualnega stroja. Ugotovite, kako je to mogoče storiti na internetu.

Ključna beseda za vrnitev

Vrzi izročitev. Njegova sintaksa je videti takole:

vrgel novo NewException ();




Tu je ustvarjena nova izjema z vrsto NewException (). Kot tip lahko uporabite razrede, ki so že vključeni v standardne knjižnice Java in jih razvijalec vaše lastne proizvodnje predhodno definira.

Takšna zgradba je vključena v opis nekaterih metod, ki jih je treba nato poklicali v poskusni blok, da bi jih lahko prestregli.

Vrže ključne besede

Kaj storiti, če v razvojnem procesu obstaja situacija, v kateri lahko metoda izloči izjemo, vendar je ne more pravilno ravnati. Da bi to naredili, podpis metode določa vrsto besed in vrsto možne izjeme.

Ta oznaka je vrsta kazalca za razvijalce odjemalca, da metoda ne more obdelati lastne izjeme. Poleg tega, če je vrsta napake preverljiva, bo prevajalnik to izrecno navedel.

Poskusite z viri

V Java različici 7 so razvijalci vključili tako pomembno novost kot predelavo poskusnega bloka s sredstvi.

Mnogi predmeti, ustvarjeni v Javi, morajo po njihovi uporabi zapreti, da shranijo vire. Pred tem ste morali račune in jih zaustaviti ročno. Zdaj imajo vmesnik AutoClosable. Pomaga pri samodejnem zapiranju že uporabljenih predmetov, postavljenih v poskusni blok. Zahvaljujoč temu pristopu je postalo bolj priročno napisati kodo, njegova berljivost pa se je znatno povečala.

Razredi izjem Java

Kreatorji opisanega programskega jezika so pri načrtovanju vrst nepredvidenih situacij upoštevali številne vidike. Vendar pa ni mogoče preprečiti vseh variant izidov dogodkov, zato je v Javi mogoče uresničiti možnost določitve lastnih izjem, primernih natančno za potrebe določene kode.

Najpreprostejši način ustvarjanja je dedovanje od najbolj primernega predmeta do konteksta.

java izključitev seznam

Tu ste podedovali iz Izjema, razred, ki se uporablja za opredelitev lastnih izjem. V MyExceptionu obstajata dva konstruktorja - ena privzeto, druga - s trditvijo vrste msg. String.

Nato v javnem razredu FullConstructors se izvaja metoda f, katere podpis vsebuje vreče MyException. Ta ključna beseda pomeni, da lahko f vrne izjemo Java iz vrste MyException. Nadalje, v telo metode, tekstovne informacije se oddajajo v konzolo in dejanska generacija MyException, s pomočjo metanja.

Druga metoda se rahlo razlikuje od prvega v tem, ko se vrže izjeme, se ji prenese nizni parameter, ki se bo odrazil v konzoli, ko jo zajame. V glavnem vidite, da sta f () in g () vstavljena v poskusni blok, ključna beseda ulova pa je nastavljena na ulov MyException. Rezultat obdelave je izhod sporočila o napaki na konzolo:

ustvarite java izjeme

Tako je bilo mogoče dodati izjeme v Java, ustvarjene ročno.

Izjema Arhitektura

Kot vsi objekti v Java so tudi izjeme podedovane in imajo hierarhično strukturo. Koreninski element vseh napak, ki jih vnesemo v ta programski jezik, je java.lang.Throwable class. Podeduje dve vrsti - Napaka in Izjema.

izpuščati java izjemo

Napaka - obvešča o kritičnih napakah in predstavlja neizbrisane izjeme iz programa Java. Preskušanje in obdelava takih podatkov v večini primerov poteka v fazi razvoja in jih ni treba izvajati v kodi končne prijave.

Najpogosteje uporabljeni razred za ustvarjanje in analiziranje izjem je Izjema. Ki je nato razdeljena na več vej, vključno z RuntimeException. RuntimeException se nanaša na izjeme izvajanja, to je tiste, ki se zgodijo med izvajanjem programa. Vsi naslovi, ki so jih podedovali, so nepreverljivi.

Pogoste izjeme

V izjemah Java, katerih seznam je predstavljen spodaj, se najpogosteje uporabljajo, zato je vsakega izmed njih podrobneje opisati:

  • ArithmeticException. To vključuje napake v zvezi z aritmetičnimi operacijami. Najbolj presenetljiv primer je delitev z ničlo.
  • ArrayIndexOutOfBoundsException - dostopa do številke elementa matrike, ki presega njegovo skupno dolžino.
  • ArrayStoreException - poskus dodelitve elementa polja nezdružljive vrste.
  • ClassCastException - poskus napačnega oblikovanja ene vrste v drugo.
  • IllegalArgumentException - z uporabo neveljavnega argumenta v klicu metode.
  • NegativeArraySizeException je izjema pri ustvarjanju matrike negativnih velikosti.
  • NullPointerException - nepravilna uporaba ničle reference.
  • NumberFormatException - se pojavi, ko se niz ne pretvori v številko.
  • UnsupportedOperationException - operacija ni podprta.

Ti primeri so neizbrisani tipi izjeme Java. In tako preverite:

  • ClassNotFoundException - razred ni bil najden.
  • IllegalAcccessException - omejuje dostop do razreda.
  • InterruptedException - prekinitev pretoka.
  • NoSuchFieldException - zahtevano polje ne obstaja.

Razlaga izjem

Če govorimo o skupnih izjemah, je treba opozoriti, da se njihova razlaga v času razvoja lahko nepravilno dojema. Nato je majhen seznam podrobneje razložen, ko se lahko zgodi nepredvidena situacija.

java izjeme vrste

NullPointerException. Prvič, ko pride do izjeme, se sklicuje na referenco objekta, ki je ničla. To velja tudi za metode nič primerka razreda. NullPointerException se lahko vrže in če je dolžina matrike enaka nič. Izogibajte se takim situacijam tako, da periodično preverjate predmete na ničlo.

ArrayIndexOutOfBoundsException. Noben program ne more obstajati brez uporabe nizov. V skladu s tem pogosto sklicevanje na njih lahko povzroči napake. Izjema pride, ko razvijalec skuša dostopiti do elementa matrike, ki ni na seznamu indeksov. Zahtevana vrednost je na primer nad ali pod ničlo. Pogosto se pojavi kot posledica dejstva, da se število v matriki začne od nič.

Sklepi

Izvajanje ravnanje Java je močno okolje orodje, ki močno olajša delo programerja in mu omogoča, da ustvarite čisto in brez napak kode. Status in ugled podjetja, ki razvija podjetje, je odvisna od tega, kako funkcionalnost aplikacij deluje gladko in stabilno.

java napake napak

Seveda je v bolj ali manj preprostih programih lažje slediti neodvisnim situacijam. Toda v velikih avtomatskih kompleksih za več sto tisoč vrstic je to mogoče le zaradi dolgotrajnega odpravljanja napak in testiranja.

Za izjeme v zvezi z Javo napake, ki se pojavijo v nekaterih aplikacijah, posamezna podjetja ponujajo nagrade, kadar so navdušenci. Posebej cenimo tiste, ki povzročajo kršitev varnostne politike programskega kompleksa.

Zdieľať na sociálnych sieťach:

Príbuzný