clang API Documentation
ObjC protocols inspired Java interfaces. Unlike Java, ObjC classes and protocols are in distinct namespaces. For example, Cocoa defines both an NSObject protocol and class (which isn't allowed in Java). As a result, protocols are referenced using angle brackets as follows:
id <NSDraggingInfo> anyObjectThatImplementsNSDraggingInfo;