我已将所有 NSManagedObject 的自定义逻辑放在一个类别中,这样当模型发生变化时,我就可以从模型中重新生成标准类。
我需要的一个这样的逻辑是对象属性之一的自定义设置器:
- (void) setName:(NSString *)name
{
[self willChangeValueForKey:@"name"];
[self setPrimitiveValue:name forKey:@"name"];
[self didChangeValueForKey:@"name"];
NSLog(@"name was changed");//for example
}
我已将其放在类别中,在这种情况下是Item+Custom.m
我的问题:
为什么每次我设置一个Item的名字,都不需要导入Item+Custom.m?上面的日志语句仍然会触发。
只是好奇发送消息的类如何不需要知道逻辑仍然触发的类别?
并且(可能是一个单独的问题)如果我将具有不同日志记录语句的相同自定义设置器添加到同一对象的第二个类别会发生什么?