Главная > Java | Java labs > Java: return в finally блоке

Java: return в finally блоке

13.06.2012 0 коммент. » Просмотры: 1 566
 

Сегодня прочитал в книжке Хорстмана и Корнелла о порядке выполнения операций при перехвате исключений. И это побудило меня, оставить эту заметку..

Рассмотрим такой пример:

Результат:

А что ожидали Вы?

Ситуация интересна тем, что finally блок выполняется, после оператора return в любом случае. Именно поэтому вместо 1, мы получили 0. Т.е. вначале отработал "первый" return, а после этого его "перезаписал" второй return который находится в секции finally. На мой взгляд, такая ошибка, может заставить понервничать, при её поиске.

Автор: | Теги:

Важно

У нас заработал ФОРУМ. Все вопросы, которые не касаются статьи, а так же вопросы по конкретно вашему случаю нужно задавать и обсуждать именно там, в разделе "Помощь пользователям".

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Разрешены HTML-теги: <a>, <code>, <i>, <em>, <strong>, <b>, <u>, <strike>