Java är som alla andra programmeringsspråk i att det finns strikta regler för hur data hanteras och logik följs . Om ditt program avviker från de regler eller den får en typ av data som inte är förväntat , är ett fel genereras . I Java felet kallas ett undantag . Det finns tre typer av undantag i Java : kontrollerat , fel och runtime . Kontrollerad Undantag
kontrolleras undantaget uppstår på grund av ett programmeringsfel . Detta ses vanligen när fel typ av data som överförs till ett Java API metod . En programmerare bör föregripa dessa typer av fel och kontrollera korrekta uppgifter och graciöst hantera felet . Till exempel, om ett program måste beräkna bruttolönen genom att multiplicera antalet arbetade timmar med lön ränta och betala ränta är definierad som ett tecken fält , skulle datorn vet inte hur man utför multiplikation eftersom ett tecken variabel inte är tillåtet i denna operation . I Java detta skulle generera ett kontrollerat undantag .
Error-undantag
Fel undantag genereras av omständigheter utanför Java-program . Om programmet skulle skriva en rapport , men ingen skrivare fästes , skulle detta generera ett fel undantag . Fel undantagen är till skillnad från kontrollerade och runtime undantag , error undantag kan inte fångas . Ett fel undantag kommer alltid att generera en stack trace ( se nedan ) .
Runtime Exception
sista klassen av undantagen är den runtime undantag. Detta är ett undantag som genereras inuti Java-program , men förväntas inte . Ett utmärkt exempel på en runtime undantag skulle försöka komma ett array-element som är utanför den definierade omfattningen av arrayen . Om ett undantag är
stackspårning
genereras och inte " fångas " och sedan Java Virtual Machine ( JVM ) kommer att generera en stackspårning . Spåret är mycket bra att en programmerare , det visar vilka steg programmet hade tagit innan undantaget orsakades . Många gånger stackspårningen kommer att lista de exakta kodrad som orsakade undantaget . Härifrån en programmerare kan titta på koden för att avgöra vad som var fel . Medan stack spår är mycket praktiskt för programmerare att använda för felsökning , bör en välskriven Java -program aldrig tillåta användaren att se en stackspårning . Om en stackspårning visades från en webbaserad Java-program , kan det ge hackare en färdplan för hur man hackar sajten .
Try ... Catch Block
Java anser vissa operationer som att öppna och läsa filer vara farlig kod . Denna fara kod behöver särskild behandling av Java . Fara kod behöver läggas i ett försök ... catch-block . Fångsten delen tillåter programmeraren att hantera undantag graciöst . Om undantag inte hanteras av programmeraren , kommer Java visas en stack trace . Ett försök ... catch-block ser ut så här :
try { //öppna filen för att skriva toOutput = ny PrintWriter ( ny FileWriter ( " output.dat " ) ) ; } catch ( IOException e ) { System . out.println ( " Kan inte öppna utfil " ) ;
om nu öppen misslyckas visas meddelandet "Kan inte öppna utfil " visas , inte en stackspårning
< . br >