我在这里发现this后,我不知道代码的有效性。 但是,我从来没有遇到过这样的事情,也没有读过关于这方面的任何事情(我刚刚开始objectiveC)。这里是代码示例需要澄清这个返回类型
@implementation MyHTTPConnection
- (NSObject<HTTPResponse> *)httpResponseForMethod:(NSString *)method URI:(NSString *)path
{
HTTPLogTrace();
if ([path isEqualToString:@"/getElement"])
{
NSData *data = ...
HTTPDataResponse *response = [[HTTPDataResponse alloc] initWithData:data];
return response;
}
// default behavior for all other paths
return [super httpResponseForMethod:method URI:path];
}
@end
我的问题是这里的返回类型是什么?
(NSObject<HTTPResponse> *)
它在我看来是一个实现HTTPResponse对象的NSObject指针。 我认为它可以简单地写成这样
NSObject *
我错过了什么?我不确定为什么会选择上述内容。特别是与NSObject。任何建议,澄清这将不胜感激。