Java:
Virheiden käsittely
Kuinka:
Java käyttää poikkeuksia virheiden käsittelyyn. Sijoitat riskialttiin koodin try-lohkon sisään ja otat kiinni poikkeukset catch-avainsanalla. Tässä on yksinkertainen esimerkki:
public class ErrorHandlingExample {
public static void main(String[] args) {
try {
int tulos = jaa(10, 0);
System.out.println("Tulos on: " + tulos);
} catch (ArithmeticException e) {
System.out.println("Hups, nollalla ei voi jakaa!");
}
}
private static int jaa(int jaettava, int jakaja) {
return jaettava / jakaja;
}
}Tulostus:
Hups, nollalla ei voi jakaa!Syväsukellus
Virheenkäsittely Javassa on kehittynyt. Alkuaikoina ei ollut poikkeuksia; ohjelmoijat tarkistivat virhekoodit. Sitten Java toi käyttöön try-catch-lohkot, mahdollistaen tyylikkäämmän virheenkäsittelyn.
Vaihtoehtoja perinteiselle try-catch -rakenteelle ovat try-with-resources automaattisesti sulkeutuvia resursseja varten ja puhtaamman koodin aikaansaamiseen, otettu käyttöön Javassa 7.
Toteutuksen yksityiskohdat ovat tärkeitä. Esimerkiksi Exception tai Throwable -luokan poikkeusten ottaminen kiinni on yleensä huono käytäntö. Se on liian laaja-alainen, peittäen alleen mahdollisesti huomaamattomat virheet. Pysyttele tietyissä poikkeuksissa.
Katso myös
- Viralliset Oracle Java -opetusmateriaalit poikkeuksista: https://docs.oracle.com/javase/tutorial/essential/exceptions/
- Javan
try-with-resources-lauseen dokumentaatio: https://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html - Effective Java kirjoittanut Joshua Bloch, parhaista käytännöistä poikkeuksien suhteen.