Page 56 - 4657
P. 56
виключення в заголовку методу. Такий програмний код не буде
відтрансльований.
class ThrowsDemo1 {
static void procedure() {
System.out.println("inside procedure");
throw new IllegalAccessException("demo");
}
public static void main(String args[]) {
procedure();
} }
Для того, щоб ми змогли відтранслювати цей приклад, нам
прийдеться повідомити транслятору, що procedure може
збуджувати виключення типу IllegalAccessException і в методі
main додати код для обробки цього типу виключень :
class ThrowsDemo {
static void procedure() throws
IllegalAccessException {
System.out.println(" inside procedure");
throw new IllegalAccessException("demo");
}
public static void main(String args[]) {
try {
procedure();
}
catch (IllegalAccessException e) {
System.out.println("caught " + e);
}
} }
Нижче приведений результат виконання цієї програми.
С:\> java ThrowsDemo
inside procedure
caught java.lang.IllegalAccessException: demo
finally
Іноді потрібно гарантувати, що визначена ділянка коду буде
виконуватись незалежно від того, які виключення були
54