Java keeruliste funktsioonidega tegelemisel võib juhtuda, et programmeerija peab hoiduma tõenäolistest piirangutest. Näiteks algoritmide rakendamine ja analüüsimine tõenäoliste erandite põhjal. Sellistes olukordades püüda ' mitu erandit ” Javas võimaldab arendajal loogikat õigesti rakendada ja koodi täitmist sujuvamaks muuta, ilma et tekiks kitsaskohti.
See ajaveeb tutvustab Java mitme erandi püüdmise lähenemisviise.
Kuidas Javas mitut erandit tabada?
' proovi… püüda ” lauseid saab kasutada Java mitme erandi püüdmiseks.
Näide 1: püüdke Java mitu erandit eraldi
Selles näites saab toime tulla mitme erandiga, määrates need eraldi:
proovi {
int x = Integer.parseInt ( null ) ;
System.out.println ( x ) ;
int a = 2 ;
int b = a / 0 ;
System.out.println ( b ) ;
}
püüda ( NumberFormatException f ) {
System.out.println ( f.getMessage ( ) ) ;
}
püüda ( AritmeetilineErand e ) {
System.out.println ( e.getMessage ( ) ) ;
}
Ülaltoodud koodilõigul:
- Esmalt lisage ' proovi ” plokk.
- Esimene erand: Rakenda ' parseInt() ' meetod nullstringi muutmiseks täisarvuks, mille tulemuseks on ' NumberFormatException ”.
- Teine erand: Selle erandi korral jagage lähtestatud number arvuga ' 0 ', nii et lõpmatus tagastatakse, mis viib Aritmeetiline erand ”.
- jaotises ' püüda ” plokk, rahuldada mõlema ees seisva erandi.
- Nendes plokkides kuvage üksikasjalik eranditeade stringina ' getMessage() ” meetod.
- Pidage meeles, et esimesena ilmnenud erandit käsitletakse varem ja seda kuvatakse sõltumata määratud ' püüda ” plokid.
Väljund
Selles väljundis võib täheldada, et kuna parsimine toimub koodis esimesena, kuvatakse vastav erand varem.
Näide 2: püüa kinni mitu Java erandit, kasutades bitiviisi VÕI operaatorit “|”
Selles konkreetses näites saab bitipõhise VÕI-operaatori abil silmitsi seista mitme erandiga. | ' nimetatakse ka kui ' ühe toruga ', mis kontrollib tingimuse iga osa, st ' erand ” ja tagastage varem esinenud erand:
proovi {int a = 2 ;
int b = a / 0 ;
System.out.println ( b ) ;
int x = Integer.parseInt ( null ) ;
System.out.println ( x ) ;
}
püüda ( NumberFormatException | AritmeetilineErand e ) {
System.out.println ( e.getMessage ( ) ) ;
}
Selles koodiplokis:
- Tuletage meelde arutletud lähenemisviise samade erandite täpsustamiseks, millega tuleb arvestada.
- Pange tähele, et varem esinenud erand on antud juhul ' Aritemaatiline erand ” mõiste selgitamiseks.
- jaotises ' püüda ' plokk, rakendage biti kaupa VÕI-operaatorit ' | ', et korrata läbi iga määratud erandi ja tagastada vastav sõnum varem esinenud erandi vastu '' getMessage() ” meetod.
Väljund
See tulemus näitab, et kuna ' Aritemaatiline erand ' seisab ees, vastav eranditeade tagastatakse kui ' string ”.
Järeldus
' proovi… püüda ” lauseid saab kasutada mitme Java erandi püüdmiseks. Seda saab saavutada, määrates erandid eraldi või kasutades bitipõhist VÕI operaatorit ' | “. Erandid arvestatakse nende esinemise järjestuse alusel. Selles ajaveebis arutati Java mitme erandi püüdmise metoodikat.