Page 59 - 4657
P. 59

compute(1);
            compute(20);
            }
            catch (MyException e) {
            System.out.println("caught" + e);
            }
            } }
                 Цей  приклад  досить  складний.  У  ньому  зроблене
            оголошення  підкласу  MyException  класу  Exception.  У  цього
            підкласу  є  спеціальний  конструктор,  що  записує  в  перемінну
            об'єкта  цілочислові  значення,  і  сполучений  метод  toString,  що
            виводить  значення,  що  зберігається  в  об'єкті-виключенні.  Клас
            ExceptionDemo      визначає    метод    compute,     що    збуджує
            виключення  типу  MyExcepton.  Проста  логіка  методу  compute
            збуджує  виключення  в  тому  випадку,  коли  значення  пари
            методу  більше  10.  Метод  main  у  захищеному  блоці  викликає
            метод compute спочатку з припустимим значенням, а потім  - з
            недопустимим  (більше  10),  що  дозволяє  продемонструвати
            роботу  при  обох  шляхах  виконання  коду.  Нижче  приведений
            результат виконання програми.
            С:\> java ExceptionDemo
            called compute(1).
            normal exit.
            called compute(20).
            caught MyException[20]




















                                                                             57
   54   55   56   57   58   59   60   61   62   63   64