Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako napísať vlastný handler v Jave

jazyk Java poskytuje model výnimku , takže vývojári môžu riešiť situácie , v ktorej normálne spustenie programu pokazí . Existuje mnoho spôsobov , ako program môže vziať nečakaný obrat , ale niekoľko všeobecných druhy činností , sú náchylné k týmto situáciám , ako je napríklad vstup /výstup , spracovanie s poľami a niektoré aritmetické výpočty . Mať prehľad o tom , ako zvládnuť výnimky vo vašich Java programov je jednou z kľúčových zručností spojených sa stal developer . Pokyny dovolená 1

Vytvorte si svoj ​​program v jazyku Java , pomocou nasledujúcej osnovy ako triedy a hlavné metódy :

import java.io. * ;

public class ExceptionDemo {

public static void main ( String [ ] args ) {

FileWriter fileOut = new FileWriter ( " outputfile.txt " ) ;

PrintWriter výtlačok = new PrintWriter ( fileOut ) ;

printOut.println ( " Text sa vytlačí do súboru " ) ;

printOut.close ( ) ;

fileOut.close ( ) ;

} }

Ak vložíte tento kód do IDE ( Integrated Development Environment ) , ktorý upozorňuje kód chyby , uvidíte , že to ani nebude schopný zostaviť , pretože tam je " neošetrené výnimke . " Metóda FileWriter Konštruktor môže vyvolať výnimku , napríklad v prípade, že súbor , ktorý ste zadali nemožno nájsť
2

Umiestnite kód s nechránenú výnimku do " vyskúšať " bloku takto : .

try {

FileWriter fileOut = new FileWriter ( " outputfile.txt " ) ;

PrintWriter výtlačok = new PrintWriter ( fileOut ) ;

printOut.println ( " text je vytlačiť do súboru " ) ;

printOut.close ( ) ;

fileOut.close ( ) ;

}

To by malo zabrániť prekladač z sťažujú na linkách , ktoré boli spôsobujúce neošetrené chyby výnimku , ale vytvoriť nový typ chyby , pretože " vyskúšať " vyhlásenie ešte nie je dokončená . " Pokúsiť " vyhlásenie je v podstate obal pre kód , ktorý môže vyvolať výnimku , ale stále máte , aké by sa stalo , keby výnimka je v podstate vyhodený .
3

Vložte " chytiť " vyhlásenie takto ( po uzavretí " skúsiť " držiak ) :

úlovku ( IOException OIE ) {

System.err.println ( " Došlo IOException : " + ioe.getMessage ( ) ) ;

}

To by malo byť dosť , aby kompilátor šťastný , a umožní vám spustiť program . Avšak , všetko , čo ste urobil , je zabrániť program od zhadzovať , ak je vyvolaná výnimka v tomto bode . V závislosti na detaily vašej aplikácie , môžete vložiť iný kód tu sa odráža to , čo je vo vašej " skúsiť " bloku , pretože sa neuskutočnili , že kód . Akonáhle je výnimka , bude výkon skočiť rovno do kódu " úlovku " .
4

Pridať ďalšie handler . V závislosti od charakteru vášho programu , môže byť vhodné zahrnúť iný kód pre konkrétne typy výnimkou . Napríklad , pred psovoda " IOException " si môže zahŕňať :

západku ( FileNotFoundException fnfe ) {

System.err.println ( "Došlo FileNotFoundException : " + fnfe.getMessage ( ) ) ;

}

Jedná sa o špecifický typ chyby než IOException , takže v prípade , že výnimka nie je FileNotFoundException , bude váš kód skok na všeobecnejšej psovoda IOException miesto . Reťazové svoje handler týmto spôsobom umožňuje diktovať , čo presne by sa malo stať pre každý typ chyby .

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené