打个比方:在ViewController的生命周期中,我们经常看到这样的代码:
//在VC生命周期的viewDidLoad中第一行调用父类中的方法
[super viewDidLoad];
//在VC生命周期的viewWillAppear中第一行调用父类中的方法
[super viewWillAppear:animated];
那么我们为何要这样做呢?如果不这样做会出现什么情况呢?
以viewDidLoad为例,父类的viewDidLoad会为你做一些初始化工作。比如:B是父类,A继承自B,B在viewDidLoad方法中创建和初始化了一些成员,那么A在调用viewDidLoad的时候没有调用super的viewDidLoad方法,那么就有可能一些成员没有被初始化,可能就会产生一些问题。
建议初学者一定不要忘记调用super的方法。