Будинки Розвиток Що таке обробка винятків у .net? - визначення з техопедії

Що таке обробка винятків у .net? - визначення з техопедії

Зміст:

Anonim

Визначення - Що означає обробка винятків?

Обробка винятків - це механізм, за допомогою якого конструктивна програма використовується для послідовної фіксації, перехоплення та обробки помилки, що сталася під час виконання програми. Загальна мова виконання (CLR) .NET Framework призначена для використання моделі обробки винятків на основі об'єктів виключень та захищених блоків коду.

Особливості механізму обробки винятків, реалізованого в CLR, такі:

a) Кожна мова може мати свою специфікацію поводження з винятками без будь-яких обмежень

б) Винятки створюються та обробляються незалежно від мови, що використовується та типу коду (керованого чи некерованого)

c) Винятки можуть бути перенесені через межі процесу чи машини

Техопедія пояснює поводження з винятками

.NET під час виконання викидає винятки як об'єкти, отримані з класу System.Exception, які містять детальну інформацію про помилку, включаючи повідомлення та рядок коду, де сталася помилка тощо. Для обробки винятків використовується конструкція "try..catch..finally". У той час як блоки "спробувати" (де передбачено виключення) та "ловити" (де обробляються винятки) обов'язкові, блок "нарешті" (де код виконувався в будь-якому випадку) не є обов'язковим.

Якщо порівнювати обробку помилок, реалізовану за допомогою традиційних методів, як-от використання коду повернення, як у Component Object Model (COM) та "перейти до" операторів, як у Visual Basic тощо, - основними перевагами винятків у .NET є захоплення всіх збої, усунення процесу перевірки поверненої вартості та його використання (якщо недійсне) у додатках, використання в сценаріях, де немає зворотного значення, таких як конструктори, підвищена надійність та краща продуктивність.

Хоча Java надає "перевірені" винятки, які допомагають запобігти випадковість оброблення винятків під час компіляції, вони не можуть бути використані для помилок, які не підлягають відшкодуванню. Обробка винятків у C ++ відрізняється від такої у .NET тим, що не має блоку "нарешті" для очищення ресурсів та без будь-яких обмежень для типу винятку.

Це визначення було написано в контексті .NET
Що таке обробка винятків у .net? - визначення з техопедії