14.02.2017 Views

. Стиллмен, Дж. Грин - Изучаем 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> классы<br />

А б стр ах тн ьхй класс<br />

Каж<strong>е</strong>тся, ты н<strong>е</strong>сколько п<strong>е</strong>р<strong>е</strong>оц<strong>е</strong>нива<strong>е</strong>шь свою<br />

роль.<br />

И н т<strong>е</strong>р ф <strong>е</strong>й с<br />

Дума<strong>е</strong>шь, раз ты сод<strong>е</strong>ржишь код, лучш<strong>е</strong> т<strong>е</strong>бя никого<br />

н<strong>е</strong>т? Но ты н<strong>е</strong> поспоришь с фактом, что насл<strong>е</strong>довать<br />

можно только от одного класса за раз.<br />

Так что ты огранич<strong>е</strong>н. Да, я н<strong>е</strong> сод<strong>е</strong>ржу кода, но<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 />

программу работать.<br />

Д<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>ализуются.<br />

Да ну? По моим наблюд<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 />

писать код.<br />

Да, кон<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> м<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 />

Н<strong>е</strong> им<strong>е</strong><strong>е</strong>т знач<strong>е</strong>ния!<br />

2) abstract class Top { }<br />

class Tip : Top { }<br />

4) interface Foo { }<br />

class Bar : Foo { }<br />

class Baz : Bar { }<br />

Корр<strong>е</strong>ктны<strong>е</strong> объявл<strong>е</strong>ния<br />

3) abstract class Fee { }<br />

abstract class Fi : Fee { }<br />

5) interface Zeta { }<br />

class Alpha : Zeta { ,<br />

interface Beta { }<br />

class Delta : Alpha, Beta { }<br />

дальш<strong>е</strong> * 317

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!