Библиотека knigago >> Компьютеры: Языки и системы программирования >> Java, Java Script >> Философия java


"Тайм-менеджмент. Полный курс" Глеба Архангельского - это настоящий кладезь знаний для тех, кто хочет эффективно управлять своим временем и повысить продуктивность. Автор подробно разбирает различные техники и инструменты тайм-менеджмента, такие как матрица Эйзенхауэра, принцип Парето и метод "помидора". Архангельский не просто излагает сухую теорию, а приводит множество реальных примеров и практических упражнений, что помогает лучше понять и внедрить эти техники в свою...

СЛУЧАЙНАЯ КНИГА

Рыцарь страха и упрека. Алла Холод
- Рыцарь страха и упрека

Жанр: Детектив

Год издания: 2017

Серия: Психология преступления

Брюс Эккель - Философия java

Философия java
Книга - Философия java.  Брюс Эккель  - прочитать полностью в библиотеке КнигаГо
Название:
Философия java
Брюс Эккель

Жанр:

Учебники и самоучители по компьютеру, Современные российские издания, Литература ХXI века (эпоха Глобализации экономики), Программирование: прочее, Java, Java Script

Изадано в серии:

java

Издательство:

неизвестно

Год издания:

-

ISBN:

неизвестно

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "Философия java"

Введите сюда краткую аннотацию

Читаем онлайн "Философия java". [Страница - 144]

При взгляде на класс TurnOffChecking нетрудно заметить, что вызвать метод throwRuntimeException() можно и без блока try, поскольку он не возбуждает ни¬каких контролируемых исключений. Но когда вы будете готовы перехватить исключение, у вас будет возможность перехватить любое из них — достаточно поместить свой код в блок try. Начинаете вы с перехвата исключений, которые, как вы знаете, могут явно возникнуть в коде блока try, — в нашем случае первым делом перехватывается SomeOtherException. В конце вы перехватываете Runtime- Exception и заново возбуждаете исключение, являющееся его причиной (получая последнее методом getCause(), «завернутое» исключение). Так извлекаются из¬начальные исключения, обрабатываемые в своих предложениях catch.

Методика «заворачивания» управляемых исключений в объекты Runtime- Exception встречается в некоторых примерах книги. Другое возможное реше¬ние — создание собственного класса, производного от RuntimeException. Пере¬хватывать такое исключение не обязательно, но, если вы захотите, такая возможность существует.

Основные правила обработки исключений

Используйте исключения для того, чтобы:

• обработать ошибку на текущем уровне (избегайте перехватывать исклю¬чения, если вы не знаете, как с ними поступить);

• исправить проблему и снова вызвать метод, возбудивший исключение;

• предпринять все необходимые действия и продолжить выполнение без повторного вызова метода;

• попытаться найти альтернативный результат вместо того, который дол¬жен был бы произвести вызванный метод;

• сделать все возможное в текущем контексте и заново возбудить это же исключение, перенаправив его на более высокий уровень;

• сделать все, что можно в текущем контексте, и возбудить новое исключе¬ние, перенаправив его на более высокий уровень;

• завершить работу программы;

• упростить программу (если используемая вами схема обработки исклю¬чений делает все только сложнее, значит, она никуда не годится);

• добавить вашей библиотеке и программе безопасности (сначала это по¬может в отладке программы, а в дальнейшем окупится ее надежностью).

Резюме

Исключения являются неотъемлемой частью программирования на Java; суще¬ствует некий барьер, который невозможно преодолеть без умения работать с ними. По этой причине исключения были представлены именно в этой части книги — многими библиотеками (скажем, библиотекой ввода/вывода) просто невозможно нормально пользоваться без обработки исключений.

Одно из преимуществ обработки исключений состоит в том, что она позво¬ляет сосредоточиться на решаемой проблеме, а затем обработать все ошибки в описанном коде в другом месте. Хотя исключения обычно описываются как средство передачи информации и восстановления после ошибок на стадии вы¬полнения, я сильно сомневаюсь, что «восстановление» часто реализуется на практике. По моей оценке, это происходит не более чем в 10% случаев, и даже тогда в основном сводится к раскрутке стека к заведомо стабильному со¬стоянию вместо реального выполнения действий по восстановлению. На мой взгляд, ценность исключений в основном обусловлена именно передачей ин¬формации. Java фактически настаивает, что программа должна сообщать обо всех ошибках в виде исключений, и именно это обстоятельство обеспечивает Java большое преимущество перед языками вроде С++, где программа может сообщать об ошибках разными способами (а то и не сообщать вовсе).



--">

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.