В конце концов Java знает, что исключение создано без какой-либо переменной

Есть ли способ узнать в finally, что возникло исключение, без использования какой-либо дополнительной переменной, как показано ниже:

 boolean hasFailed = true;
 try { // code

     //...
     hasFailed = false;
  } finally {
      if (hasFailed) {
         // handle failure
      }
   }

Точно так же, также без добавления переменной исключения (с использованием предложения catch), я не нашел ответьте на похожие вопросы


person user7294900    schedule 14.12.2018    source источник
comment
Нет; используйте блок catch.   -  person SLaks    schedule 14.12.2018
comment
@SLaks также с блоком catch, как не использовать дополнительную переменную?   -  person user7294900    schedule 14.12.2018
comment
@Lorelorelore в ответах такой опции нет   -  person user7294900    schedule 14.12.2018
comment
@ user7294900: в чем проблема с 1 дополнительным логическим флагом? Просто используйте обычный _1 _ / _ 2_ поток и установите флаг true в блоке catch. Я бы также посоветовал записать ошибку в нетривиальном коде.   -  person derekmckinnon    schedule 14.12.2018
comment
@derekmckinnon не может наконец заблокировать, знаете, что выбрано исключение?   -  person user7294900    schedule 14.12.2018
comment
@ user7294900 Нет. Язык был разработан не для этого.   -  person derekmckinnon    schedule 14.12.2018
comment
@derekmckinnon есть обработчик необработанного исключения как stackoverflow.com/questions/588634/ ​​   -  person user7294900    schedule 14.12.2018
comment
UncaughtExceptionHandler вызывается только тогда, когда Thread собирается завершить, потому что никакой другой код не перехватил исключение.   -  person Slaw    schedule 14.12.2018
comment
@ user7294900 Вам следует просто использовать язык так, как он был задуман, вместо того, чтобы пытаться заставить его работать так, как вы думаете. Как уже упоминалось, механизм, о котором вы говорите, не предназначен для этого и является взломом. Любой, кто поддерживает код после вас, возненавидит их существование, если вы это сделаете ... поверьте мне   -  person derekmckinnon    schedule 14.12.2018