Attention! Your ePaper is waiting for publication!
By publishing your document, the content will be optimally indexed by Google via AI and sorted into the right category for over 500 million ePaper readers on YUMPU.
This will ensure high visibility and many readers!
Ключ<strong>е</strong>вы<strong>е</strong> сАоВа try и catch<br />
П р о и схо д я щ <strong>е</strong> <strong>е</strong> в C # м о ж н о о п и сать ф разой «Прот<strong>е</strong>стируйт<strong>е</strong> (try) э т о т код и п р и п о я в л <strong>е</strong> н и и искл ю ч <strong>е</strong> <br />
н и я пр<strong>е</strong>рвит<strong>е</strong> (catch) <strong>е</strong>го другим кодом ». Т<strong>е</strong>стиру<strong>е</strong>м ая часть кода назы ва<strong>е</strong>тся блоком tr y , а часть, обрабаты<br />
ваю щ ая и с к л ю ч <strong>е</strong> н и я , - блоком c a tc h . В блок<strong>е</strong> c a t c h м о ж н о добавить сообщ <strong>е</strong>ни<strong>е</strong> об о ш и б к<strong>е</strong> , н<strong>е</strong><br />
давая п р о грам м <strong>е</strong> а в а р и й н о зав<strong>е</strong>рш и ть работу.<br />
обработка исключ<strong>е</strong>ний Ключ<strong>е</strong>вы<strong>е</strong> сАоВа try и catch П р о и схо д я щ <strong>е</strong> <strong>е</strong> в C # м о ж н о о п и сать ф разой «Прот<strong>е</strong>стируйт<strong>е</strong> (try) э т о т код и п р и п о я в л <strong>е</strong> н и и искл ю ч <strong>е</strong> н и я пр<strong>е</strong>рвит<strong>е</strong> (catch) <strong>е</strong>го другим кодом ». Т<strong>е</strong>стиру<strong>е</strong>м ая часть кода назы ва<strong>е</strong>тся блоком tr y , а часть, обрабаты ваю щ ая и с к л ю ч <strong>е</strong> н и я , - блоком c a tc h . В блок<strong>е</strong> c a t c h м о ж н о добавить сообщ <strong>е</strong>ни<strong>е</strong> об о ш и б к<strong>е</strong> , н<strong>е</strong> давая п р о грам м <strong>е</strong> а в а р и й н о зав<strong>е</strong>рш и ть работу. private void randomExcuse_Click(object sender, EventArgs e) __ зд<strong>е</strong>сь код, добавл<strong>е</strong>нш т н<strong>е</strong>сколько страниц назад. s t r y { if (CheckChangedО == true) { currentExcuse = new Excuse(random, selectedFolder); UpdateForm (false) ; Ключ<strong>е</strong>во<strong>е</strong> слово catch означа<strong>е</strong>тj что <strong>е</strong>л<strong>е</strong>дующий за ним блок оп<strong>е</strong>раторов сод<strong>е</strong>ржит оораоотчик исключ<strong>е</strong>ния.
сомнит<strong>е</strong>льны<strong>е</strong> д<strong>е</strong>лишки Вызоб сомнит<strong>е</strong>льного м<strong>е</strong>тода П о л ьзоват<strong>е</strong>ли н<strong>е</strong>пр<strong>е</strong>дсказу<strong>е</strong>м ы . О н и вводят в п р о гр а м м у с тр а н н ы <strong>е</strong> данны <strong>е</strong> , щ <strong>е</strong>лкаю т на кн о п ка х. И это п р <strong>е</strong> кр а сн о , в<strong>е</strong>дь вы м ож <strong>е</strong>т<strong>е</strong> сп р а в и ться с п о сл <strong>е</strong>дствиям и ввода т а к и х д а н н ы х, обрабаты вая и скл ю ч <strong>е</strong> н и я . ( D Пр<strong>е</strong>дположим, пользоват<strong>е</strong>ль вводит н<strong>е</strong> т<strong>е</strong> данны <strong>е</strong>. Пользоват<strong>е</strong>ль Вводимы<strong>е</strong> данны<strong>е</strong> Написанный вами класс М <strong>е</strong>тод д <strong>е</strong>л а<strong>е</strong>т что-то странно<strong>е</strong>, что мож<strong>е</strong>т и н<strong>е</strong> сработать во вр<strong>е</strong>мя прогона. Вр<strong>е</strong>м<strong>е</strong>н<strong>е</strong>м прогона (Runtime) называ<strong>е</strong>тся вр<strong>е</strong>мя работы ваш<strong>е</strong>й программы. Исключ<strong>е</strong>ния иногда <strong>е</strong>щ<strong>е</strong> называют «ошибками при исполн<strong>е</strong>нии» (runtime erro rs). Вы должны знать, что вы зы ва<strong>е</strong>мы й м<strong>е</strong>тод сомнит<strong>е</strong>л<strong>е</strong>н. Написанный вами класс p u b l i c v o id } P r o c e s s ( I n p u t i ) { i f ( i .I s B a d O ) e x p l o d e ( ) ; { A что буд<strong>е</strong>т, <strong>е</strong>сли щ<strong>е</strong>лкнуть зд<strong>е</strong>сь... } М<strong>е</strong>тод ProcessQ н<strong>е</strong> работа<strong>е</strong>т с н<strong>е</strong>корр<strong>е</strong>ктными данными! ,— Л у Лучш<strong>е</strong> вс<strong>е</strong>го, <strong>е</strong>сли вы пр<strong>е</strong>дусмотрит <strong>е</strong> обходной пут ь на случай возникнов<strong>е</strong>ния исключ<strong>е</strong>ний! Впроч<strong>е</strong>м полностью устранить риск н<strong>е</strong> Пользоват<strong>е</strong>ль получится, поэтому сл<strong>е</strong>ду<strong>е</strong>т поступать так. \ V ( 5 ) в этом случа<strong>е</strong> вы см ож<strong>е</strong>т<strong>е</strong> написать код, обрабаты ваю щ ий исклю ч<strong>е</strong>ни<strong>е</strong>. Если оно появится, вы буд<strong>е</strong>т<strong>е</strong> готовы. Программа д<strong>е</strong>йствит<strong>е</strong>льно стабильна! ваша программа НаПИклппы и вами класс Пользоват<strong>е</strong>ль Ваш класс т<strong>е</strong>п<strong>е</strong>рь ум<strong>е</strong><strong>е</strong>т обрабатывать исключ<strong>е</strong>ния 466 глава 10