Руководство по actionscript. часть 2, стр. 080

Вариант 2. Упростить код, но по-прежнему использовать один класс для исключительных ситуаций класса VirtualPet

В данном случае мы изменяем метод setName ( ) таким образом, чтобы проверка всех трех исключительных ситуаций выполнялась в одном операторе if. Этот вариант аналогичен предыдущему, но использует более сжатый код.

Вариант 3. Использовать отладочные сообщения для нахождения различий между ошибками.

В данном случае мы добавляем конфигурируемые отладочные сообщения в класс VirtualPetNameException. Этот вариант незначительно увеличивает степень детализации по сравнению с двумя предыдущими, но только для удобства разработчика и только на этапе отладки.

Вариант 4. Создать пользовательский класс исключения для каждой исключительной ситуации.

Используя это вариант, мы создаем два пользовательских подкласса класса VirtualPetNameException: VirtualРеtlnsufficientDataException и VirtualPetExcessDataException. Этот вариант обеспечивает наибольшую степень детализации. Он позволяет программе независимо реагировать на три разновидности ошибок, относящихся к классу VirtualPet, используя формальную логику ветвлений.

Рассмотрим каждый из описанных вариантов.

Варианты 1 и 2. Использование одного пользовательского типа исключения. Первый вариант состоит в применении предыдущего описания метода setName ( ), которое генерирует ошибку одного и того же типа (VirtualPetNameException) для всех трех исключительных ситуаций, относящихся к классу Virtual Pet. Поскольку для генерации исключений этот метод использует класс VirtualPetNameException, а не класс Error, исключения класса Vi rtual Pet уже отличаются от других базовых исключений. Пользователи метода setName ( ) могут применять код, аналогичный следующему, для отличия ошибок, относящихся к классу VirtualPet, от других базовых ошибок:

try {

// Этот вызов метода setName( ) приведет к возникновению исключения // VirtualPetNameException. somePet. setName(«»);

// Другие инструкции в этом блоке try могут генерировать // другие базовые ошибки. Для демонстрационных целей

// мы непосредственно сгенерируем // базовую ошибку.

throw new Error(«A generic error.»); } catch (e:VirtualPetNameException) { // Здесь обрабатываются ошибки, связанные с именем объекта класса // VirtualPet.

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

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

Вы должны авторизоваться для отправки комментария.

Полезные ссылки
Случайные записи
  • 02.03.2011">Руководство по actionscript. часть 5, стр. 088
  • 23.02.2011">Руководство по actionscript. часть 7, стр. 029
  • 06.10.2012">Google и американские издатели урегулировали семилетний спор
  • 04.03.2011">Руководство по actionscript. часть 5, стр. 038
  • 12.01.2010">Удобная твиттер лента в блоге на jQuery
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.111
  • 11.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.4
  • 16.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.35
  • 13.03.2011">Руководство по actionscript. часть 3, стр. 089
  • 15.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.37
  • 03.03.2011">Руководство по actionscript. часть 5, стр. 076
  • 25.02.2011">Руководство по actionscript. часть 6, стр. 081
  • 15.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.52
  • 22.07.2011">Шторы – элегантное украшение родного дома
  • 13.03.2011">Руководство по actionscript. часть 3, стр. 092
Опрос

Какие цвета вы предпочитаете?

View Results

Loading ... Loading ...