Простой тестовый пример для демонстрации двух моих проблем:
public class Numbers {
private static void usage() {
System.err.println("Usage: java " + getClass().getName() + " range");
System.exit(1);
}
public static void main(String[] args) throws IOException {
try {
int range = Integer.parseInt(args[0]);
} catch (Exception e) {
usage();
}
}
}
getClass ()
из статического метода ArrayIndexOutOfBoundsException
вместо вывода usage ()
. Почему не ловит (Исключение e) его не ловит?