УПД: Добавлен пример с ленивыми вычислениями поверх стандартных потоков.
Как известно из функциональных интерфейсов в Stream API, вы не можете создавать контролируемые исключения.
Если по каким-то причинам это необходимо (например, работа с файлами, базами данных или по сети), вам придется обернуть их в RuntimeException. Это хорошо работает, если ошибки игнорируются, но если их нужно обрабатывать, код становится громоздким и трудным для чтения.
Я заинтересовался, можно ли объявлять интерфейсы и методы с обобщенными исключениями и неожиданно обнаружил, что это возможно.
Давайте определим такой функциональный интерфейс; он отличается от стандартной функции интерфейс только при наличии третьего универсального типа для выброшенного исключения.
Теги: #java #generic #Exception #обработка исключений #stream api #функциональные интерфейсы #javapublic interface FunctionWithExceptions<A, B, T extends Throwable>{
-
Ноутбук Vpc-F Vpcf13Z1E/B От Sony Vaio
19 Oct, 24 -
Пожалуйста, Расстреляйте Наконец Эти Теги!
19 Oct, 24 -
У Поддержки Стрима Железные Нервы
19 Oct, 24