初心者の質問がありました。self と super の呼び出しの違いを理解しようとしています。継承やその他の基本的な OOP の概念は理解できましたが、self と super の概念はまだ明確ではありません。私の質問を例で説明します。
したがって、以下のコードは、電話が上下逆さまに傾いているときにセグエを実行します。「Scene2ViewController」は「UIViewController」のサブクラスであるため、「Scene2ViewController」は UIViewController のすべてのメソッドを継承することを理解しています。そのため、以下では、メッセージの受信者が自己であるメソッド performSegueWithIdentifier を呼び出しています。「self」を「super」に変更しても、コードは同じように実行されます。super の呼び出しは、self の呼び出しと同じではありませんか? 誰かが私にこれを説明できれば、感謝します。
//Scene2ViewController.m
- (BOOL)shouldAutorotateToInterfaceOrientation: (UIInterfaceOrientation)interfaceOrientation
{
if (interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown) {
[self performSegueWithIdentifier:@"SegueToScene1" sender:self];
}
return (interfaceOrientation ==
UIInterfaceOrientationPortrait);
}