我必须在didTurnIntoFault
中拨打超级电话吗?我在文档中找不到任何指示。
- (void)didTurnIntoFault {
[super didTurnIntoFault]; // Do I have to call super?
// ...
}
答案 0 :(得分:0)
不,我不相信。 didTurnIntoFault
的目的是让您有机会释放您可能持有的任何实例变量(特别是对于瞬态值)。虽然它可以用作dealloc
子类的NSManagedObject
的替代,但这是因为NSManagedObject
的生命周期与普通NSObject
完全不同。因此,虽然它与dealloc
的用途大致相同,但它的工作方式却完全不同。
当然,如果您继承自己的NSManagedObject
子类,则需要在那里调用[super didTurnIntoFault]
。
那就是说,我会想象NSManagedObject
的实施可能是一个无操作,所以我真诚地怀疑无论如何调用它都有任何伤害。此外,因为它没有任何伤害,它可以帮助你记住在真正重要时调用它。
答案 1 :(得分:0)
如果您继承NSManagedObject并覆盖-didTurnIntoFault,则必须将消息发送给super。
请参阅NSManagedObject类引用的Subclassing Notes。