В дополнение к существующим здесь ответам информация в этом ответе может помочь вам решить, когда звонить «супер».
Методы, которые вызываются, когда дочерний объект / представление / viewcontroller создается / инициализируется, первое, что вы делаете, это вызываете super (то есть, если вы хотите вызвать его).
Когда дочерний объект / view / viewcontroller уничтожен / удален, вы вызываете super в конце метода.
например:
// methods called when the you are loading/showing with the view controller
-(void)viewDidLoad {
[super viewDidLoad];
//call super and then all your code goes here
}
-(void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
//call super and then all your code goes here
}
// methods called when the you are done with the view controller
- (void)viewWillDisappear:(BOOL)animated{
//all your code goes here and then call super
[super viewWillDisappear:animated];
}
- (void)viewDidUnload {
//all your code goes here and then call super
[super viewDidUnload];
}
Аналогично, для -dealloc супер вызывается в конце, для -init супер вызывается в начале.
Надеюсь, это демистифицирует Супер.