Допомога у написанні освітніх робіт...
Допоможемо швидко та з гарантією якості!

Розпізнавання класу виняткової ситуації

РефератДопомога в написанніДізнатися вартістьмоєї роботи

Розпізнавання класу виняткової ситуації виконується за допомогою конструкцій on do; які записуються в секції обробки виключної ситуації, наприклад: On EMathError do …; / / Обробка інших помилок речової математики. Else {обробка всіх інших помилок (обробник за умовчанням)}; On EMathError do {обробка інших помилок речової математики}; On EZeroDivide do …; / / Обробка помилки ділення на нуль… Читати ще >

Розпізнавання класу виняткової ситуації (реферат, курсова, диплом, контрольна)

Розпізнавання класу виняткової ситуації виконується за допомогою конструкцій on do; які записуються в секції обробки виключної ситуації, наприклад:

try.

/ / Обчислення з числами.

except.

on EZeroDivide do …; / / Обробка помилки ділення на нуль.

on EMathError do …; / / Обробка інших помилок речової математики.

end;

Пошук відповідного обробника виконується послідовно до тих пір, поки клас виняткової ситуації не виявиться сумісним з класом, зазначеним в операторі on. Як тільки обробник знайдено, випоняемие оператор, що стоїть за словом do і управління передається за секцію except… end. Якщо виняткова ситуація не належить до жодного із зазначених класів, то управління передається в зовнішній блок try… except…end і обробник шукається в ньому.

Зверніть увагу, що порядок операторів on має значення, оскільки розпізнавання виняткових ситуацій має походити від приватних класів до загальних класів, інакше кажучи, від нащадків до предків. З чим це пов’язано? Зараз зрозумієте. Уявіть, до чого призведе зміна порядку операторів on у прикладі вище, якщо взяти до уваги, що клас EMathError є базовим для EZeroDivide. Відповідь проста: обробник EMathError буде поглинати всі помилки речової математики, в тому числі EZeroDivide, В результаті обробник EZeroDivide ніколи не виконається.

На найвищому рівні програми буває необхідно перехоплювати всі виняткові ситуації, щоб у разі якоїсь необлікованої помилки коректно завершити програму. Для цього застосовується так званий обробник за умовчанням (Default exception handler). Він записується в секції except після всіх операторів on і починається ключовим словом else:

try.

{Обчислення з числами}.

except.

on EZeroDivide do {обробка помилки ділення на нуль};

on EMathError do {обробка інших помилок речової математики};

else {обробка всіх інших помилок (обробник за умовчанням)};

end;

Врахуйте, що відсутність частини else відповідає запису else raise, Яке немає сенсу використовувати явно. Ми зі свого боку взагалі не радимо вам користуватися обробкою виняткових ситуацій за замовчуванням, оскільки всі ваші програми будуть будуватися, як правило, на основі бібліотеки VCL, в якій обробка за умовчанням вже передбачена.

Показати весь текст
Заповнити форму поточною роботою