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

TraceC’An error occurred: » + e. message); traceCPlease specify a valid name.»); } catch (e:Error) { // Здесь обрабатываются все остальные ошибки. traceC’An error occurred: » + e. message);

}

Для большого количества приложений степень детализации, обеспечиваемая классом Virtual РеtNameExcept ion, оказывается достаточной. В этом случае мы должны по крайней мере переписать метод setName ( ), чтобы он не содержал избыточный код (трижды генерирующий исключение VirtualPetNameException). Рассмотрим переписанный код (представляющий вариант 2 из предыдущего списка):

public function setName (newName:String):void { if (newName. indexOfC «) == 0 11 newName == «»

jj newName. length > Virtual Pet. maxNameLength) { throw new VirtualPetNameException( );

}

petName = newName;

r*^! 1 Переписывание кода с целью улучшения его структуры без изменения существующего

-ttf

поведения называется рефакторингом.

Вариант 3. Применение конфигурируемых отладочных сообщений. Вариант 3 заключается в добавлении конфигурируемых отладочных сообщений в класс VirtualPetNameException. Варианты 1 и 2 позволяют отличить исключение класса VirtualPet от других исключений в приложении, но не позволяют отличить исключение «слишком длинное» от исключения «слишком короткое». Если вы чувствуете, что отладка проблемы, связанной с именем объекта класса Virtual Pet, затруднена отсутствием знания о том, является имя объекта класса VirtualPet слишком длинным или слишком коротким, можно изменить класс VirtualPetNameException таким образом, чтобы он принимал дополнительное описание (наподобие общеизвестного крестика на память). Рассмотрим измененный код класса VirtualPetNameException:

package zoo {

public class VirtualPetNameException extends Error { // Предоставляет конструктор, который позволяет указывать // пользовательское сообщение. Если пользовательское сообщение не // указано, используется стандартное сообщение об ошибке public function VirtualPetNameException (

message:String = «Invalid pet name specified.») {

super(message);

}

}

}

Чтобы воспользоваться модифицированным классом Virtual PetNameExcept ion в методе setName ( ), вернемся к коду метода setName ( ), использованному в варианте 1, и добавим отладочные сообщения об ошибке, как показано в следующем коде:

public function setName (newName:String):void { if (newName. indexOfC «) == 0) { // В данном случае отлично подойдет стандартное сообщение об ошибке, // поэтому не стоит утруждать себя указанием пользовательского сообщения // об ошибке.

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

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

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

Полезные ссылки
Случайные записи
  • 10.08.2010">Flash элементы уходят в прошлое?
  • 09.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.167
  • 22.07.2011">Интернет – кладезь для меломанов
  • 28.02.2011">Руководство по actionscript. часть 6, стр. 015
  • 07.10.2010">Подбор цветовой палитры с помощью Color Scheme Designer
  • 11.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.10
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.63
  • 09.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.139
  • 28.02.2011">Руководство по actionscript. часть 6, стр. 005
  • 03.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.59
  • 18.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.78
  • 17.03.2011">Руководство по actionscript. часть 2, стр. 155
  • 10.08.2011">Педиатр – лучший друг молодых родителей
  • 17.03.2011">Руководство по actionscript. часть 2, стр. 157
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.124
Опрос

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

View Results

Loading ... Loading ...