. Стиллмен, Дж. Грин - Изучаем C#, 2-е издание
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Часзцо<br />
'^ а д а В а <strong>е</strong> М ы <strong>е</strong><br />
БоП роС Ь!<br />
Поч<strong>е</strong>му им<strong>е</strong>на одних пол<strong>е</strong>й начинаются<br />
с прописной буквы, а других —<br />
со строчной? Это что-то означа<strong>е</strong>т?<br />
0 ; Да, означа<strong>е</strong>т. Для вас. Но н<strong>е</strong> для компилятора.<br />
С# вс<strong>е</strong> равно, каки<strong>е</strong> им<strong>е</strong>на вы выбира<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>нных п<strong>е</strong>р<strong>е</strong>м<strong>е</strong>нных,<br />
вс<strong>е</strong> отличи<strong>е</strong> им<strong>е</strong>н которых заключа<strong>е</strong>тся<br />
в р<strong>е</strong>гистр<strong>е</strong> п<strong>е</strong>рвой буквы.<br />
в <strong>C#</strong> р<strong>е</strong>гистр им<strong>е</strong><strong>е</strong>т знач<strong>е</strong>ни<strong>е</strong>. Внутри<br />
одного м<strong>е</strong>тода можно им<strong>е</strong>ть дв<strong>е</strong> п<strong>е</strong>р<strong>е</strong>м<strong>е</strong>нны<strong>е</strong><br />
с им<strong>е</strong>нами P a r ty и p a r ty .<br />
Это н<strong>е</strong> пом<strong>е</strong>ша<strong>е</strong>т компиляции кода. Вот<br />
н<strong>е</strong>сколько сов<strong>е</strong>тов по выбору им<strong>е</strong>н для<br />
п<strong>е</strong>р<strong>е</strong>м<strong>е</strong>нных, которы<strong>е</strong> упростят чт<strong>е</strong>ни<strong>е</strong><br />
программы в будущ<strong>е</strong>м.<br />
1. Им<strong>е</strong>на пол<strong>е</strong>й закрытого доступа должны<br />
начинаться со строчной буквы.<br />
2. Им<strong>е</strong>на свойств и пол<strong>е</strong>й общ<strong>е</strong>го доступа<br />
должны начинаться с прописной буквы.<br />
3. Им<strong>е</strong>на парам<strong>е</strong>тров м<strong>е</strong>тодов должны<br />
начинаться со строчной буквы.<br />
инкапсуляция<br />
4. В н<strong>е</strong>которых м<strong>е</strong>тодах, особ<strong>е</strong>нно это каса<strong>е</strong>тся<br />
конструкторов, им<strong>е</strong>на парам<strong>е</strong>тров<br />
совпадают с им<strong>е</strong>нами пол<strong>е</strong>й. В итог<strong>е</strong> парам<strong>е</strong>тр<br />
маскиру<strong>е</strong>т пол<strong>е</strong>, то <strong>е</strong>сть оп<strong>е</strong>раторы<br />
м<strong>е</strong>тодов, которы<strong>е</strong> используют это имя,<br />
ссылаются на парам<strong>е</strong>тр, а н<strong>е</strong> на пол<strong>е</strong>. Эта<br />
пробл<strong>е</strong>ма р<strong>е</strong>ша<strong>е</strong>тся при помощи ключ<strong>е</strong>вого<br />
слова th is, достаточно добавить<br />
<strong>е</strong>го к им<strong>е</strong>ни, и компилятор пойм<strong>е</strong>т, что вы<br />
им<strong>е</strong><strong>е</strong>т в виду пол<strong>е</strong>, а н<strong>е</strong> парам<strong>е</strong>тр.<br />
Код сод<strong>е</strong>ржит ошибки. Напишит<strong>е</strong>, в ч<strong>е</strong>м, по ваш<strong>е</strong>му мн<strong>е</strong>нию, они заключаются<br />
и как их исправить.<br />
c l a s s G um ballM achine {<br />
p r i v a t e i n t g u m b a lls;<br />
p r i v a t e i n t p r i c e ;<br />
p u b l i c i n t P r ic e<br />
■{<br />
g e t<br />
{<br />
r e t u r n p r i c e ;<br />
.p u b lic G u m b a llM a c h in e (in t g u m b a lls , i n t p r i c e<br />
g u m b a lls = t h i s . g u m b a lls ;<br />
p u b l i c s t r i n g D isp e n se O n e G u m b a ll(in t p r i c e , i n t c o i n s l n s e r t e d )<br />
{<br />
i f ( t h i s . c o i n s l n s e r t e d >= p r i c e ) { / / пров<strong>е</strong>рка поля<br />
} e l s e {<br />
}<br />
g u m b a lls -= 1;<br />
r e t u r n "Вот ваша ж <strong>е</strong>ват<strong>е</strong>льная р <strong>е</strong> зи н к а " ;<br />
r e t u r n "Сумма н <strong>е</strong> д о ст а т о ч н а " ;<br />
дальш<strong>е</strong> > 227