我对 OBJ-C 中的协议有一些疑问。我经常看到用协议声明 id 对象的行,例如:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
id <NSFetchedResultsSectionInfo> secInfo = [[self.fetchedResultsController sections]objectAtIndex:section];
NSLog(@"%i",[secInfo numberOfObjects]);
return [secInfo numberOfObjects];
}
我根本不明白以下行:
id <NSFetchedResultsSectionInfo> secInfo = [[self.fetchedResultsController sections]objectAtIndex:section];
- “身份证”是什么意思?
- “objectAtIndex:section”返回什么对象?
- 为什么我可以在对象上调用“[secInfo numberOfObjects]”?我的意思是,方法 numberOfObjects 是如何存在的?
我正在尝试精简 CoreData,但如果不理解这一点,我实际上无法继续。谢谢你。