. Стиллмен, Дж. Грин - Изучаем 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 />
О<br />
Подсказка: Воспользуйт<strong>е</strong>сь появл<strong>е</strong>ни<strong>е</strong>м сообщ<strong>е</strong>ни<strong>е</strong>м<br />
об ошибк<strong>е</strong> «по overload'» Авпйипґ<br />
Класс W o rk e r долж<strong>е</strong>н насл<strong>е</strong>довать от класса В<strong>е</strong><strong>е</strong><br />
Конструктор класса W o r k e r долж<strong>е</strong>н брать в<strong>е</strong>с пч<strong>е</strong>лы и п<strong>е</strong>р<strong>е</strong>давать <strong>е</strong>го конструктору базового<br />
класса. Вам оста<strong>е</strong>тся только добавить ключ<strong>е</strong>во<strong>е</strong> слово o v e r r i d e к м<strong>е</strong>тоду S h i f t L e f t .<br />
Посл<strong>е</strong> этого каждая рабочая пч<strong>е</strong>ла получит возможность вычислить сво<strong>е</strong> потр<strong>е</strong>бл<strong>е</strong>ни<strong>е</strong><br />
м<strong>е</strong>да, и ваша работа по р<strong>е</strong>дактированию класса W o r k e r буд<strong>е</strong>т зав<strong>е</strong>рш<strong>е</strong>на!<br />
т<br />
Класс Q ueen такж<strong>е</strong> долж<strong>е</strong>н насл<strong>е</strong>довать от класса В<strong>е</strong><strong>е</strong><br />
С классом Q u e e n п р и д <strong>е</strong>тся пов ози ться , так как и м <strong>е</strong>н н о зд<strong>е</strong>сь п р о и с х о д и т п о д с ч <strong>е</strong> т к ол ич <strong>е</strong><br />
ства м <strong>е</strong>да и ф о р м и р у <strong>е</strong>тся отч<strong>е</strong>т.<br />
★<br />
★<br />
П<strong>е</strong>р<strong>е</strong>кройт<strong>е</strong> м<strong>е</strong>тод В <strong>е</strong> <strong>е</strong> . G e t H o n e y C o n s u m p t io n о и добавьт<strong>е</strong> к н<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>ство см<strong>е</strong>н матки равно колич<strong>е</strong>ству см<strong>е</strong>н<br />
самой занятой рабоч<strong>е</strong>й пч<strong>е</strong>лы.<br />
Обновит<strong>е</strong> м<strong>е</strong>тод W o r k T h e N e x t S h if t (), добавив к отч<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>бл<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>мя т<strong>е</strong>кущ<strong>е</strong>й см<strong>е</strong>ны). Такж<strong>е</strong> нужно уч<strong>е</strong>сть<br />
потр<strong>е</strong>бл<strong>е</strong>ни<strong>е</strong> м<strong>е</strong>да самой маткой и добавить в кон<strong>е</strong>ц отч<strong>е</strong>та строчку «Total Honey<br />
Consumption: ххх units» (Суммарно<strong>е</strong> потр<strong>е</strong>бл<strong>е</strong>ни<strong>е</strong> м<strong>е</strong>да).<br />
★ Обновит<strong>е</strong> конструктор для класса Q u een , как вы это д<strong>е</strong>лали с конструктором для<br />
класса W orker.<br />
В класс<strong>е</strong> Queen наб<strong>е</strong>рит<strong>е</strong> public<br />
public override<br />
override и нажмит<strong>е</strong> проб<strong>е</strong>л.<br />
Появится список доступных<br />
Эля п<strong>е</strong>р<strong>е</strong>крытия м<strong>е</strong>тодов. По<strong>е</strong>л<strong>е</strong><br />
выбора нужного варианта<br />
названи<strong>е</strong> базового м<strong>е</strong>тода появится<br />
автоматич<strong>е</strong>ски.<br />
^<br />
Equafe(objectobj)<br />
♦ GetHeshCodeO<br />
■ ♦ IZ Z Z ir"<br />
S ’ ShiftsLeft { g e t }<br />
ToStringO<br />
Корр<strong>е</strong>ктный уч<strong>е</strong>т вс<strong>е</strong>х данны х о пч<strong>е</strong>лах<br />
Посл<strong>е</strong> р<strong>е</strong>дактирования конструкторов Q u e e n и W o rk er тр<strong>е</strong>бу<strong>е</strong>тся вн<strong>е</strong>сти изм<strong>е</strong>н<strong>е</strong>ния<br />
и в способ их вызова. В конструкторах появился новый парам<strong>е</strong>тр W e ig h t , который сл<strong>е</strong>ду<strong>е</strong>т<br />
указать:<br />
★<br />
Worker В<strong>е</strong><strong>е</strong> #1: 175mg; Worker Bee #2:114mg; Worker Bee #3: 149mg;<br />
Worker Bee #4: 155mg; Queen Bee: 275mg<br />
Это посл<strong>е</strong>дн<strong>е</strong><strong>е</strong> изм<strong>е</strong>н<strong>е</strong>ний, которо<strong>е</strong> тр<strong>е</strong>бовалось вн<strong>е</strong>сти в форму!<br />
дальш<strong>е</strong> ► 279