Гость
Форумы / Java [игнор отключен] [закрыт для гостей] / Исключения в Kotlin / 18 сообщений из 18, страница 1 из 1
31.05.2019, 12:23
    #39820687
XDiaBLo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
Не пойму как правильно обрабатывать исключения в Котлин. В одних источниках пишут про стандартные try catch finally, в других про capture eq, причём последние вообще не гуглятся, и находятся только в курсе по котлину от Эккеля Неужели там сразу оба механизма? И как тогда у capture выглядит finally?
...
Рейтинг: 0 / 0
31.05.2019, 12:28
    #39820692
XDiaBLo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
Понял, это он просто какие-то обёртки накрутил.
...
Рейтинг: 0 / 0
04.06.2019, 10:19
    #39822113
XDiaBLo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
Неужели нельзя в котелке сделать по человечески?
Код: java
1.
catch (InterruptedException | ExecutionException | TimeoutException e) {


Почему приходится на каждый иксэпшен отдельный кэтч делать?
...
Рейтинг: 0 / 0
04.06.2019, 10:34
    #39822129
XDiaBLo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
Хмм, ну можно и так, но это какое-то извращение.
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
try {
    // code
} catch(ex:Exception) {
    when(ex) {
        is SomeException,
        is AnotherException -> {
            // handle
        }
        else -> throw ex
    }
}
...
Рейтинг: 0 / 0
04.06.2019, 10:47
    #39822137
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
XDiaBLoНеужели нельзя в котелке сделать по человечески?
Код: java
1.
catch (InterruptedException | ExecutionException | TimeoutException e) {


Почему приходится на каждый иксэпшен отдельный кэтч делать?
В этой ловушке не очень много пользы. Какого типа у тебя будет "e"?

Какие решения ты примешь в блоке catch?
...
Рейтинг: 0 / 0
04.06.2019, 10:52
    #39822146
XDiaBLo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
maytonXDiaBLoНеужели нельзя в котелке сделать по человечески?
Код: java
1.
catch (InterruptedException | ExecutionException | TimeoutException e) {



Почему приходится на каждый иксэпшен отдельный кэтч делать?
В этой ловушке не очень много пользы. Какого типа у тебя будет "e"?

Какие решения ты примешь в блоке catch?
Для моего случая подходит. Мне лишь получить сообщение из иксепшена, и завернуть его в свой класс ответа.
...
Рейтинг: 0 / 0
04.06.2019, 11:07
    #39822165
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
XDiaBLomaytonпропущено...

В этой ловушке не очень много пользы. Какого типа у тебя будет "e"?

Какие решения ты примешь в блоке catch?
Для моего случая подходит. Мне лишь получить сообщение из иксепшена, и завернуть его в свой класс ответа.
Это всё - наследники Exception. Обрабатывай его.

Если-бы ты извлекал конкретную информацию из полей специфичного потомка Exception - то конкретика имела-бы смысл.
А в твоём использовании ты просто переусложнил ловушку.
...
Рейтинг: 0 / 0
04.06.2019, 11:19
    #39822172
XDiaBLo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
maytonXDiaBLoпропущено...

Для моего случая подходит. Мне лишь получить сообщение из иксепшена, и завернуть его в свой класс ответа.
Это всё - наследники Exception. Обрабатывай его.

Если-бы ты извлекал конкретную информацию из полей специфичного потомка Exception - то конкретика имела-бы смысл.
А в твоём использовании ты просто переусложнил ловушку.
Ну так ловить вообще все иксепшены как-то немудро.
...
Рейтинг: 0 / 0
04.06.2019, 11:32
    #39822186
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
XDiaBLomaytonпропущено...

Это всё - наследники Exception. Обрабатывай его.

Если-бы ты извлекал конкретную информацию из полей специфичного потомка Exception - то конкретика имела-бы смысл.
А в твоём использовании ты просто переусложнил ловушку.
Ну так ловить вообще все иксепшены как-то немудро.
Вот и лови. Или у тебя есть какой-то особый класс потомков стандартного
checked который тебе "не надо" ловить?
...
Рейтинг: 0 / 0
04.06.2019, 12:23
    #39822223
XDiaBLo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
maytonXDiaBLoпропущено...

Ну так ловить вообще все иксепшены как-то немудро.
Вот и лови. Или у тебя есть какой-то особый класс потомков стандартного
checked который тебе "не надо" ловить?
Вроде нет. Но привычно ловить то, что ожидаешь, а не всё подряд.
...
Рейтинг: 0 / 0
04.06.2019, 12:25
    #39822226
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
XDiaBLomaytonпропущено...

Вот и лови. Или у тебя есть какой-то особый класс потомков стандартного
checked который тебе "не надо" ловить?
Вроде нет. Но привычно ловить то, что ожидаешь, а не всё подряд.
Интересно. Ты пишешь приложение. Есть ошибки которые ты ожидаешь и поймал и обработал.

И есть "всё остальное". На которое ты пока "подзабил болт" .
...
Рейтинг: 0 / 0
04.06.2019, 12:39
    #39822235
PetroNotC Sharp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
mayton,
То что не ожидал пошло вверх по стеку и там наверно ловится).
...
Рейтинг: 0 / 0
04.06.2019, 12:40
    #39822236
Lelouch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
maytonXDiaBLoпропущено...

Вроде нет. Но привычно ловить то, что ожидаешь, а не всё подряд.
Интересно. Ты пишешь приложение. Есть ошибки которые ты ожидаешь и поймал и обработал.

И есть "всё остальное". На которое ты пока "подзабил болт" .

И есть все остальные, которые должны логироваться и крашить приложение/возвращать Internal Server Error/etc. Да, нормальная логика. Вы же не пытаетесь перехватывать Error (e.g. StackOverflowError) ?
...
Рейтинг: 0 / 0
04.06.2019, 13:05
    #39822252
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
PetroNotC Sharpmayton,
То что не ожидал пошло вверх по стеку и там наверно ловится).
Сам себя перехитрил?
...
Рейтинг: 0 / 0
04.06.2019, 14:07
    #39822297
PetroNotC Sharp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
maytonPetroNotC Sharpmayton,
То что не ожидал пошло вверх по стеку и там наверно ловится).
Сам себя перехитрил? почему? Я так ловлю.
Сообщение от базы сразу разбираюсь. Все остальное наверх.
...
Рейтинг: 0 / 0
04.06.2019, 14:27
    #39822317
XDiaBLo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
maytonXDiaBLoпропущено...

Вроде нет. Но привычно ловить то, что ожидаешь, а не всё подряд.
Интересно. Ты пишешь приложение. Есть ошибки которые ты ожидаешь и поймал и обработал.

И есть "всё остальное". На которое ты пока "подзабил болт"
.
По сути я просто переношу модуль из Джавы, и ловлю и обрабатываю как мне нужно то, что Джава заставляла ловить. Остальное, ну я не знаю что мне с остальным делать, и что там ещё может прилететь.
...
Рейтинг: 0 / 0
04.06.2019, 16:41
    #39822388
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
Ну хитёёёр..
...
Рейтинг: 0 / 0
04.06.2019, 16:54
    #39822393
XDiaBLo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исключения в Kotlin
maytonНу хитёёёр..
Не, ну на эти иксепшены у меня механизм завязан. А другие мне не надо :)
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Исключения в Kotlin / 18 сообщений из 18, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]