. Стиллмен, Дж. Грин - Изучаем C#, 2-е издание
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
чт<strong>е</strong>ни<strong>е</strong> и запись файлов<br />
___ О тр<strong>е</strong>д актиру<strong>е</strong>м програм м у Б р а й а н а E x c u se M a n a g e r таким образом , чтобы она<br />
а Ж Н б Н К б н ач ала р аботать с двои чны м и ф айлам и, сод<strong>е</strong>рж ащ им и с<strong>е</strong>риали зован н ы <strong>е</strong> объ <br />
<strong>е</strong>кты E x c u s e .<br />
О<br />
О<br />
С<strong>е</strong>риализация класса Excuse<br />
П ом <strong>е</strong>тьт<strong>е</strong> класс E x c u s e а тр и б уто м [ S e r i a l i z a b l e ] . П о тр <strong>е</strong> б у<strong>е</strong>тся<br />
такж <strong>е</strong> доб авить с тр о ч к у u s i n g :<br />
u s i n g S y s t e m . R u n t i m e . S e r i a l i z a t i o n . F o r m a t t e r s . B i n a r y ;<br />
О тр<strong>е</strong>дактируйт<strong>е</strong> м<strong>е</strong>тод Excuse.Save О<br />
Т <strong>е</strong>п<strong>е</strong>рь м <strong>е</strong>тод S a v e о вм <strong>е</strong>сто и спользо вания о б ъ <strong>е</strong>кта S t r e a m W r i t e r ,^ ^ ^ <strong>е</strong> в о <strong>е</strong> Т л о в о<br />
д о л ж <strong>е</strong> н о тк р ы в а ть ф айл и с<strong>е</strong> р иализовы вать <strong>е</strong>го. Вам н у ж н о п о н я ть , ка-<br />
КИМ образом п р о и с х о д и т д <strong>е</strong>с<strong>е</strong>риализация т<strong>е</strong> кущ <strong>е</strong> го класса.<br />
О тр<strong>е</strong>дактируйт<strong>е</strong> м <strong>е</strong>тод Excuse.OpenFile О<br />
Вам п отр<strong>е</strong>бу<strong>е</strong>тся в р <strong>е</strong> м <strong>е</strong> н н ы й объ<strong>е</strong>кт E x c u s e , в к о т о р ы й буд<strong>е</strong>т п р о и с <br />
х о д и ть д<strong>е</strong>с<strong>е</strong>риализация, посл<strong>е</strong> ч <strong>е</strong> го <strong>е</strong> го поля с к о п и р у ю т с я в т<strong>е</strong> к у щ и й<br />
класс.<br />
Подсказка: Используйт<strong>е</strong><br />
возвраща<strong>е</strong>т<br />
ссылку на<br />
эт от ж <strong>е</strong> класс.<br />
Отр<strong>е</strong>дактируйт<strong>е</strong> срорму<br />
М ы больш <strong>е</strong> н<strong>е</strong> работа<strong>е</strong>м с т<strong>е</strong> к с т о в ы м и ф айлам и, п о это м у р а сш и р <strong>е</strong> н и <strong>е</strong> . t x t н<strong>е</strong> подходит.<br />
И зм <strong>е</strong> н и т<strong>е</strong> о к н а диалога, заданны <strong>е</strong> п о ум о л ч а н и ю им <strong>е</strong> на ф айлов и код п о и ска<br />
п а п к и , подстави в туда разр<strong>е</strong>ш <strong>е</strong>ни<strong>е</strong> * . e x c u s e .<br />
Потрясающ<strong>е</strong>! В<strong>е</strong>сь код для<br />
сохран<strong>е</strong>ния и открытия оправданий находится внутри<br />
класса Excuse. Изм<strong>е</strong>н<strong>е</strong>ния вносились в класс, форму почти<br />
н<strong>е</strong> трогали. И форма работа<strong>е</strong>т вн<strong>е</strong> зависимости от того, как класс<br />
сохраня<strong>е</strong>т данны<strong>е</strong>. Она просто п<strong>е</strong>р<strong>е</strong>да<strong>е</strong>т имя (райла, и индюрмация<br />
сохраня<strong>е</strong>тся. ~ '<br />
Разум <strong>е</strong><strong>е</strong>тся! Код так л<strong>е</strong>гко р<strong>е</strong>дактиру<strong>е</strong>тся благодаря<br />
инкапсуляции класса.<br />
К ласс, в к о то р о м вс<strong>е</strong> в н у тр <strong>е</strong> н н и <strong>е</strong> о п <strong>е</strong> р а ц и и с к р ы т ы о т остальн<br />
о й ч а сти п р о гр а м м ы , а о т к р ы т ы м явля<strong>е</strong>тся то л ь к о т о , ч т о<br />
н<strong>е</strong>обхо д и м о , назы ва<strong>е</strong>тся инкапсулированным. В п р о гр а м м <strong>е</strong> ’<br />
Excuse IM anager ф орм а н<strong>е</strong> им <strong>е</strong><strong>е</strong>т и н ф о р м а ц и и о то м , ка ким<br />
образом о правдания с о х р а н я ю тс я в ф айл. О н а вс<strong>е</strong>го л и ш ь<br />
п<strong>е</strong>р<strong>е</strong>да<strong>е</strong>т им я ф айла классу, а у ж о н д<strong>е</strong>ла<strong>е</strong>т вс<strong>е</strong> н<strong>е</strong>обходим о<strong>е</strong>.<br />
И м <strong>е</strong> н н о п о это м у в ы см о гл и т а к л <strong>е</strong> гк о о тр <strong>е</strong> д а кти р о в а ть способ<br />
р а б о ты класса с ф айлам и. Ч <strong>е</strong>м лучш <strong>е</strong> и н ка п сул и р о в а н класс,<br />
т<strong>е</strong>м п р о щ <strong>е</strong> вам р аботать с н и м в будущ<strong>е</strong>м.<br />
ПoмнumeJ что инкапсуляция<br />
явля<strong>е</strong>тся<br />
одним из ч<strong>е</strong>тыр<strong>е</strong>х<br />
основных при -<br />
- знаков объ<strong>е</strong>ктноори<strong>е</strong>нтированного<br />
!лрограммирования?<br />
Вот наглядный прим<strong>е</strong>р<br />
того_, каким образом<br />
она обл<strong>е</strong>гча<strong>е</strong>т<br />
нам жизнь.<br />
дальш<strong>е</strong> > 447