. Стиллмен, Дж. Грин - Изучаем C#, 2-е издание
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Ключ<strong>е</strong>во<strong>е</strong> слово interface<br />
инт<strong>е</strong>рф<strong>е</strong>йсы и абстрактны<strong>е</strong> классы<br />
Чтобы добавить инт<strong>е</strong>рф<strong>е</strong>йс к программ<strong>е</strong>, писать м<strong>е</strong>тоды<br />
н<strong>е</strong> нужно. Достаточно указать их парам<strong>е</strong>тры и тип возвраща<strong>е</strong>мого<br />
ими знач<strong>е</strong>ния. И поставить в конц<strong>е</strong> строки<br />
точку с запятой.<br />
Инт<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>рф<strong>е</strong>йс опр<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>на<br />
добавл<strong>е</strong>ни<strong>е</strong>м поля к инт<strong>е</strong>рф<strong>е</strong>йсу, попробуйт<strong>е</strong> вм<strong>е</strong>сто этого<br />
добавить свойство, вполн<strong>е</strong> в<strong>е</strong>роятно, это им<strong>е</strong>нно то, что<br />
вам было н у ж н о ^ ^ ^ _ ^ interface iStingPatrol<br />
И нт<strong>е</strong>рф<strong>е</strong>йс {<br />
объявля<strong>е</strong>тся: Л . ^sint AlertLevel { get;}<br />
int StingerLength { get; set;}<br />
bool LookForEnemiesO;<br />
int SharpenStinger(int length)<br />
И нт <strong>е</strong>рф ш сш стоит давать<br />
им<strong>е</strong>на, начинающи<strong>е</strong>ся с п^описнои<br />
бцквы I. Н<strong>е</strong>т, правила, одязмбающ<strong>е</strong>го<br />
вас так nocmynamt^, но э т о<br />
д<strong>е</strong>ла<strong>е</strong>т код бол<strong>е</strong>в простым. Чтоды<br />
u6edumt>ca, насколько это обл<strong>е</strong>гча<strong>е</strong>т<br />
жизнь, установит<strong>е</strong> курсор на<br />
пистун> строчку внутри любого<br />
м<strong>е</strong>тода и наб<strong>е</strong>рит<strong>е</strong> I— Inte/liSense<br />
сразу ж<strong>е</strong> покаж<strong>е</strong>твам список доступных<br />
инт<strong>е</strong>рф<strong>е</strong>йсов NET<br />
Любому классу,<br />
р<strong>е</strong>ализующ<strong>е</strong>му<br />
инт<strong>е</strong>рф<strong>е</strong>йс, понадобится<br />
м<strong>е</strong>тод<br />
SharpenStingerO<br />
С парам <strong>е</strong>т ром типа<br />
int.<br />
interface INectarCollector<br />
{<br />
void FindFlowersO;<br />
void GatherNectar<br />
void ReturnToHive<br />
^<br />
;;; ' t C »<br />
Так как ж<strong>е</strong> помочь матк<strong>е</strong>? Т<strong>е</strong>п<strong>е</strong>рь она мож<strong>е</strong>т создать м<strong>е</strong>тод, б<strong>е</strong>рущий<br />
ЛЛЫНО и(^0МЯК9>^‘’<br />
Л(^0 ЭЛСМ6НТЫ ОТКОЫ“<br />
в кач<strong>е</strong>ств<strong>е</strong> парам<strong>е</strong>тра любой объ<strong>е</strong>кт, который зна<strong>е</strong>т, как защитить ул<strong>е</strong>й: *<br />
p r i v a t e v o i d D e f e n d T h e H i v e ( I S t i n g P a t r o l p a t r o l l e r )<br />
ТОГО инт<strong>е</strong>рф<strong>е</strong>йса по<br />
J<br />
Этот м<strong>е</strong>тод мож<strong>е</strong>т использовать объ<strong>е</strong>кт S t i n g P a t r o l , N e c t a r S t i n g e r<br />
или любую другую пч<strong>е</strong>лу, знающую, как защитить ул<strong>е</strong>й. При р<strong>е</strong>ализации<br />
умолчанию являются<br />
открытыми. То <strong>е</strong>сть<br />
с помопц>ю инт<strong>е</strong>р-<br />
I S t i n g P a t r o l м <strong>е</strong>тод D e f e n d T h e H iv e о гарантиру<strong>е</strong>т нал ичи<strong>е</strong> у объ<strong>е</strong>к- ( g jjJ О П О <strong>е</strong> Д <strong>е</strong> Л Я С ”<br />
та свойств и м <strong>е</strong>тодов, н <strong>е</strong>о б х о д и м ы х для защ иты улья. i г<br />
т<strong>е</strong> открыты<strong>е</strong> м<strong>е</strong>тоды<br />
^ <strong>е</strong> н т О ^<br />
Т<strong>е</strong>п<strong>е</strong>рь, когда я знаю,<br />
как защитить ул<strong>е</strong>й, мы<br />
в б<strong>е</strong>зопасности!<br />
и свойства любого<br />
р<strong>е</strong>ализующ<strong>е</strong>го <strong>е</strong>го<br />
класса.<br />
дальш<strong>е</strong> > 287