Протокол в Objective-C - это то, что вы в Java или C # назвали бы интерфейсом. Это контракт, который может выполнить любой другой класс, на языке Obj-C соответствует .
Это:
@protocol TileOverlay <MKOverlay>
Определяет протокол с именем TileOverlay
, который сам по себе расширяет MKOverlay
. То есть, согласно TileOverlay
, вы также должны соответствовать MKOverlay
.
Протоколы в Obj-C, так же как интерфейсы в Jave или C #, не имеют отношения к реализации. Это ничего не делает. Это просто маркер во время компиляции и во время выполнения, если вы хотите, чтобы проверить, существуют ли некоторые из них функционально.