Яков Сироткин (yakov_sirotkin) wrote,
Яков Сироткин
yakov_sirotkin

Конец Checked Exceptions

Java сыграла огромную роль в обучении миллионов программистов обработке ошибок, надо отдать ей должное. И идея была красивая, что каждый метод будет честно признаваться, какой подлянки от него ждать. Многие сразу говорили, что будет catch (Exception e) {}, но это явная патология, которая автоматически обнаруживается любым анализатором кода.

Однако, если в интерфейсе метод бросает исключение, то убрать это исключение можно только одновременно во всех реализациях данного метода. Меня больше всего раздражает UnsupportedEncodingException, при том что я всегда использую UTF-8.

При этом NPE случаются постоянно и ничто их не останавливает. Были придуманы аннотации @NotNull и @Nullable, но в стандарт Java они так и не вошли.

В результате современные популярные библиотеки (например, Spring) checked exceptions просто не используют. В Kotlin их уже нет в принципе.
Tags: java, kotlin
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 22 comments