Page 58 - 4657
P. 58

шляху  «назовні»  виконується  роздягання  finally.  Інший  метод
       proc завершує роботу виконанням  оператора, що є в try-блоці,
       return,  але  і  при  цьому  перед  виходом  з  методу  виконується
       програмний  код  блоку  finally.  Нижче  приведений  результат,
       отриманий при виконанні цієї програми.

       С:\> java FinallyDemo
       inside procA
       procA's finally
       inside proc
       procB's finally

            Підкласи Exception


           Тільки підкласи класу Throwable можуть бути порушені чи
       перехоплені. Прості типи - int, char і т.п., а також класи, які не
       являються  підкласами  Throwable,  наприклад,  String  і  Object,
       використовуватися  як  виключення  не  можуть.  Найбільш
       загальний шлях для використання виключень - створення своїх
       власних підкласів класу Ex­ception. Нижче приведена програма,
       у якій оголошений новий підклас класу Exception.
       class MyException extends Exception {
       private int detail;
       MyException(int a) {
       detail = a:
       }
       public String toString() {
       return "MyException[" + detail + "]";
       }
       }
       class ExceptionDemo {
       static void compute(int a) throws MyException {
       System.out.println("called computer + a + ").");
       if (a > 10)
       throw new MyException(a);
       System.out.println("normal exit.");
       }
       public static void main(String args[]) {
       try {
       56
   53   54   55   56   57   58   59   60   61   62   63