前瞻性声明

可以在没有方法的情况下声明协议名称:

@protocol Person;

使用它你的代码(类定义等):

@interface World : NSObject
@property (strong, nonatomic) NSArray<id<some>> *employees;
@end

然后在代码中的某处定义协议的方法:

@protocol Person
- (NSString *)gender;
- (NSString *)name;
@end

在使用协议定义导入该文件之前,你不需要了解协议详细信息,这很有用。因此,你的类头文件保持清晰,仅包含该类的详细信息。