W powyższej metodzie main ostatnia klauzula przechwytuje wyjątek ogólny java.lang.Exception. Zamiast
tego utwórz dedykowaną klauzulę catch dla każdego zadeklarowanego wyjątku zgłaszanego w klauzuli try.
Uwaga: w pewnych sytuacjach lepiej jest zastosować ogólną klauzulę catch, aby zapewnić poprawne zakończenie działania. Jednak ogólnie rzecz biorąc, skonkretyzowane klauzule catch zapewniają większą przejrzystość i lepszą kontrolę.
public static class Loader {
public void load() throws UnsupportedOperationException, ClassNotFoundException{
}
}
public static void main(String[] args) {
Loader loader = new Loader();
try {
loader.load();
} catch ( UnsupportedOperationException e1 ) {
System.out.println( "metoda load nie jest zaimplementowana" );
} catch ( ClassNotFoundException e2 ) {
System.out.println( "Brak klasy " + e2.getMessage() );
}
}
|
|