. Стиллмен, Дж. Грин - Изучаем 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> вм<strong>е</strong>ст<strong>е</strong><br />
пражн<strong>е</strong>ни<strong>е</strong><br />
П р и ш л о вр<strong>е</strong>м я прим <strong>е</strong>нить получ<strong>е</strong>нны <strong>е</strong> знания на практик<strong>е</strong>. В а м нужно<br />
закончить классы Ball и Pitcher, д о б ави ть класс Fan и уб<strong>е</strong>диться, что<br />
они р аб о таю т правильно.<br />
Зав<strong>е</strong>рш<strong>е</strong>ни<strong>е</strong> класса Pitcher.<br />
М<strong>е</strong>тоды CatchBall () и CoverFirstBase () должны выводить информацию<br />
о том, что защитник или ловит мяч или б<strong>е</strong>жит на п<strong>е</strong>рвую базу.<br />
class Pitcher {<br />
public Pitcher(Ball ball) {<br />
ball.BalllnPlay += new EventHandler(ball_BallInPlay);<br />
void ball_BallInPlay(object sender, EventArgs e) {<br />
if (e is BallEventArgs){<br />
BallEventArgs ballEventArgs = e as BallEventArgs;<br />
if ((ballEventArgs.Distance < 95) && (ballEventArgs.Trajectory < 60))<br />
CatchBall{);<br />
else<br />
CoverFirstBase0 ;<br />
^<br />
Эти два м<strong>е</strong>тода должны<br />
1 выводить р<strong>е</strong>зульт ат на<br />
консоль.<br />
О<br />
Создани<strong>е</strong> класса Fan.<br />
Конструктор класса Fan долж<strong>е</strong>н быть подписан на событи<strong>е</strong><br />
BalllnPlay. Его обработчик событий долж<strong>е</strong>н пров<strong>е</strong>рять, н<strong>е</strong><br />
пр<strong>е</strong>выша<strong>е</strong>т ли расстояни<strong>е</strong> 400 футов, а тра<strong>е</strong>ктория 30 (хоум-ран),<br />
и при пр<strong>е</strong>выш<strong>е</strong>нии знач<strong>е</strong>ний пытаться поймать мяч. В противном<br />
случа<strong>е</strong> бол<strong>е</strong>льщик кричит. Выв<strong>е</strong>дит<strong>е</strong> р<strong>е</strong>зультат на консоль.<br />
Хоум-ран — удар, при<br />
котором мяч прол<strong>е</strong>т а<br />
<strong>е</strong>т вс<strong>е</strong> пол<strong>е</strong> и выл<strong>е</strong>та<strong>е</strong>т<br />
за <strong>е</strong>го пр<strong>е</strong>д<strong>е</strong>лы.<br />
Точный список вывода вы увидит<strong>е</strong><br />
на рисунк<strong>е</strong> на сл<strong>е</strong>дующ<strong>е</strong>й страниц<strong>е</strong>.<br />
Fan<br />
502 глава 11