![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Golovastik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 389 Регистрация: 19.7.2009 Репутация: 1 Всего: 0 |
Вроде программа компилируется, но не срабатывают исключения, и не выводятся сразу 2 исключения, первый для массива, второй для чисел деленеи на ноль.
|
|||
|
||||
Temdegon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 429 Регистрация: 11.10.2008 Где: Minsk Репутация: 7 Всего: 9 |
У вас получается все наоборот:
для массива вы ловите ArithmeticException, а не ArrayIndexOutOfBoundsException. Следовательно, на строке 6 ваша программа завершится, т.к. исключение ArrayIndexOutOfBoundsException произойдет, а вы его не обрабатываете. Поменяйте местами обработчики. |
|||
|
||||
Golovastik |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 389 Регистрация: 19.7.2009 Репутация: 1 Всего: 0 |
Если написать так:
Происходит вывод такой:
А мне нужно чтоб 2 исключения выдавало, по поводу массива и по поводу деления на ноль. |
||||
|
|||||
Temdegon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 429 Регистрация: 11.10.2008 Где: Minsk Репутация: 7 Всего: 9 |
А чего вы ожидали?
В строке 6 возникает исключение, и исполнение переходит в стоку 13. Или вы как-то по-другому представляете себе работу исключений? |
|||
|
||||
Golovastik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 389 Регистрация: 19.7.2009 Репутация: 1 Всего: 0 |
Ещё проблема такая, скажите как сделать тоже самое, только с использованием моих собственных исключений, как правильно написать так чтоб было тоже самое только используя собственные исключения?
|
|||
|
||||
Temdegon |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 429 Регистрация: 11.10.2008 Где: Minsk Репутация: 7 Всего: 9 |
Никак.
От того, что вы напишете свои классы исключений, JVM не станет их вам бросать, вместо ArithmeticException и ArrayIndexOutOfBoundsException. Если вы пишете какой-то свой класс, то вы можете бросать свои исключений и обрабатывать их. На пример:
По понятным причинам, заменить ArithmeticException вашим собственным не получится. Единственное, что вы можете сделать, это ловить ArithmeticException и вместо него бросить ваше исключение:
|
||||
|
|||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |