Istisnoli holatlarni qayta ishlash
To’laboyeva N.D, Inomiddinov A.N.
Yangiqo’rg’on tuman 2-son kasb-hunar maktabi
Annotatsiya
Ushbu maqolada C# dasturlash tilida istisnolar bilan ishlash haqida bayon etilgan va ushbu dastur bilan mustaqil shug’ullanayotganlar uchun foydali hisoblanadi.
Kalit so’zlar: istisnio, xatolik, struktura, argument, massiv
Aytaylik tipdagi o‘zgaruvchiga sonli kattalik o‘zlashtirish uchun biz ma’lumot kiritishda son o‘rniga harf kiritib yuborsak nima bo‘ladi?. Bunda sonni o‘zgaruvchiga o‘zlashtirish jarayonida xatolik yuzaga keladi va dastur ishi natijaga erishilmasdan avval avariya xolatida yakunlanadi.
Bu kabi xotoliklar ob’ektli dasturlash tillarida istisnoli xolatlar deb ataladi.
Istisnoli xolatlarni qayta ishlash - bu istisnoli xolat yuzaga kelganda dastur ishi to‘g‘ri tugallanishi uchun bajariluvchi dastur qismidir. Istisnoli xolat yuzaga kelganda C# da avtomatik tarzda mazkur xatolikka mos kod generatsiya qilinadi. Masalan, sonni 0 ga bo‘lish xatoligi yuzaga kelganda DivideByZeroException, xotira yetishmasligi yuzaga kelganda OutOfMemoryException istisno kodlari generatsiya qilinadi.
C# da istisnolar bilan ishlash uchun System nomlar makonida barcha xatoliklar uchun ajdod sinf bo‘lgan Exeption sinfi yaratilgan.
Istisnoli xolatlar quyidagicha bo‘lishi mumkin: - nolga bo‘lish; - bir tipdagi ma’lumotni unga mos bo‘lmagan boshqa tipga konvertatsiya qilish yoki o‘zlashtirish; - mavjud bo‘lmagan faylni ochishga urinish; - massiv chegarasidan tashqaridagi(mavjud bo‘lmagan) elementiga murojaat qilish; - Dastur ishlayotgan xotiraning to‘lib ketishi va sh.k. Dasturchi istisnoli xolatni qayti ishlash uchun catch bilan boshlanuvchi maxsus dastur blokidan foydalanishi mumkin. Ushbu blok kod xatolik yuzaga kelganda avtomatik tarzda yuzaga kelgan xatolikni “tutadi” blok ichida yozilgan mos dasturiy kodni bajaradi.
Quyida tez-tez uchrab turadigan istisnoli holatlarning turlari keltirilgan.
- Exception – Barcha istisnoli holatlar uchun bazaviy tip. Ushbu tip ko‘rsatilganda catch bloki har qanday holatda ishlaydi, ya’ni Exception tipi barcha istisno xolatlarida yuzaga keluvchi xatolik kodlarini “ushlaydi”;
- FormatException – operand yoki argumentga noto‘g‘ri ma’lumot uzatishda yuzaga keluvchi xatolik kodi;
- NullReferenceException – Ob’ekt ekzemplyarida ob’ektga ishora qo‘yilmagan va shu sababli ob’ekt yaratilmagan xolatda yuzaga keluvchini xatolik kodi;
- IndexOutOfRangeException – ko‘rsatilgan murojaat qilinayotgan indeks to‘plam chegarasidan tashqarida bo‘lganda yuzaga keluvchi xatolik kodi.
- FileNotFoundException – fayl topilmagan xolatda aniqlanuvchi xatolik kodi;
- DivideByZeroException – nolga bo‘lishda yuzaga keluvchi xatolik kodi;
c# da istisnoli xolatlarni qayta ishlash uchun try-catch operatorlar blokidan foydalaniladi. U quyidagi strukturaga ega:
Do'stlaringiz bilan baham: |