Должен ли я вызвать супер в NSManagedObject didTurnIntoFault? - PullRequest
0 голосов
/ 19 июня 2009

Должен ли я назвать супер в didTurnIntoFault? Я не смог найти какие-либо указания в документации.

- (void)didTurnIntoFault {
  [super didTurnIntoFault]; // Do I have to call super?
  // ...
}

Ответы [ 2 ]

0 голосов
/ 01 июля 2009

Если вы подкласс NSManagedObject и переопределить -didTurnIntoFault, вы должны отправить сообщение супер.

См. Примечания по подклассам ссылки на класс NSManagedObject.

0 голосов
/ 19 июня 2009

Нет, я не верю в это. Цель didTurnIntoFault - дать вам возможность освободить любые переменные экземпляра (особенно для переходных значений), которые вы можете хранить. Хотя он предназначен для замены dealloc для NSManagedObject подклассов, это потому, что жизненный цикл NSManagedObject сильно отличается от обычного NSObject. Таким образом, хотя он и выполняет те же функции, что и dealloc, он работает не совсем так.

Конечно, если вы подкласс своего собственного подкласса NSManagedObject, вам нужно будет позвонить туда [super didTurnIntoFault].

Тем не менее, я бы предположил, что реализация NSManagedObject, вероятно, является запретной операцией, поэтому я искренне сомневаюсь, что в любом случае вызывать ее будет вредно. Кроме того, поскольку в этом нет никакого вреда, это может помочь вам вспомнить, чтобы позвонить, когда это действительно имеет значение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...