Junior — Middle
Дар кадом ҳолатҳо ва чӣ гуна истифода мебаред блоки try-catch-ро дар код барои коркарди истисноҳо?
sobes.tech AI
Ҷавоб аз AI
Блок try-catch истифода мешавад барои идора кардани истисноҳо, ки метавонанд дар вақти иҷрои барнома рух диҳанд, то қатъияти ногаҳонӣ пешгирӣ карда шавад ва ба хато дуруст ҷавоб додан мумкин шавад.
Вақте истифода бурдан:
- Дар кор бо амалҳое, ки метавонанд истисноҳо ба вуҷуд оранд (масалан, кор бо файлҳо, шабака, базаи додаҳо).
- Вақте ки лозим аст, хаторо идора кунед ва иҷрои барномаро идома диҳед.
- Барои сабт кардани хатоҳо ё иттилоот ба корбар.
Чӣ гуна истифода бурдан:
try
{
// Код, ки метавонад истисно ба вуҷуд орад
int result = 10 / divisor; // агар divisor = 0, истисно мешавад
}
catch (DivideByZeroException ex)
{
// Идора кардани истиснои махсус
Console.WriteLine("Нолро ба тақсим кардан имконнопазир аст.");
}
catch (Exception ex)
{
// Идора кардани ҳамаи истисноҳои дигар
Console.WriteLine("Хатогӣ рӯй дод: " + ex.Message);
}
finally
{
// Код, ки дар ҳар ҳолат иҷро мешавад
Console.WriteLine("Амалиёт анҷом ёфт.");
}
Маслиҳатҳо:
try-catch-ро барои назорати мантиқи барнома истифода набаред, танҳо барои идора кардани ҳолатҳои воқеан истисноӣ.- Истисноҳои махсусро идора кунед, то хатоҳои дигарро пинҳон накунед.
finally-ро барои озод кардани захираҳо истифода баред, агар лозим бошад.