C# Kortejlar C# kartejlarni e’lon qilish


Download 260.19 Kb.
bet15/28
Sana18.06.2023
Hajmi260.19 Kb.
#1574109
1   ...   11   12   13   14   15   16   17   18   ...   28
Bog'liq
dasturlash tyorya 8 shrift

44.45.46.Agar ushbu blokda hech qanday istisnolar o'rnatilmagan bo'lsa, u bajarilgandan so'ng, final bloki bajarila boshlaydi . Va keyin try..catch..nihoyat qurish o'z ishini yakunlaydi.Agar sinab ko'rish blokida istisno ro'y bersa, oddiy bajarish tartibi to'xtaydi va CLR istisnoni hal qila oladigan catch blokini qidira boshlaydi. Agar kerakli tutqich bloki topilsa, u bajariladi va u tugagandan so'ng yakuniy blok bajariladi Kerakli catch bloki topilmasa, istisno yuzaga kelganda dastur ishdan chiqadi.Quyidagi misolni ko'rib chiqing: Quyidagi misolni ko'rib chiqing: int x = 5;int y = x / 0;
Console.WriteLine($"Результат: {y}");Console.WriteLine("Конец программы");Bunday holda, raqam 0 ga bo'linadi, bu istisnoga olib keladi. Ilovani disk raskadrovka rejimida ishga tushirganingizda, biz Visual Studio'da istisno haqida ma'lumot beruvchi oynani ko'ramiz: Ushbu oynada System.DivideByZeroException turini ifodalovchi istisno, ya'ni nolga bo'lish urinishini ko'ramiz. Tafsilotlarni ko'rish elementidan foydalanib , siz istisno haqida batafsil ma'lumotni ko'rishingiz mumkin.Va bu holda, biz uchun qolgan yagona narsa dasturning bajarilishini to'xtatishdir.Bunday dasturning ishdan chiqishiga yo'l qo'ymaslik uchun istisnolarni hal qilish uchun try...catch...finally construct dan foydalaning . Shunday qilib, keling, misolni quyidagicha qayta yozamiz: try{ int x = 5; int y = x / 0; Console.WriteLine($"Результат: {y}");}catch{
Console.WriteLine("Возникло исключение!");}finally{
Console.WriteLine("Блок finally");}Console.WriteLine("Конец программы");Bunday holda, biz yana try blokida istisnoga ega bo'lamiz, chunki biz nolga bo'lishga harakat qilmoqdamiz. Va chiziqqa etib borish

int y = x / 0;

dasturning bajarilishi to'xtaydi. CLR ushlash blokini topadi va boshqaruvni ushbu blokga o'tkazadi.Catch blokidan so'ng finally bloki bajariladi.Istisno yuz berdi!nihoyat blokirovkaDasturning oxiri
Shunday qilib, dastur hali ham nolga bo'linishni amalga oshirmaydi va shunga mos ravishda ushbu bo'linish natijasini chop etmaydi, ammo endi u ishdan chiqmaydi va istisno catch blokida ko'rib chiqiladi.Shuni ta'kidlash kerakki, ushbu konstruktsiyada try bloki talab qilinadi . Catch bloki bilan biz finally blokini o'tkazib yuborishimiz mumkin:



Download 260.19 Kb.

Do'stlaringiz bilan baham:
1   ...   11   12   13   14   15   16   17   18   ...   28




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling