いくつかの例に基づいて(主にAaronの本で)、オーバーライドされた-initが起動時に何らかの形で呼び出されるという考えがありました。自分で試してみたところ、うまくいきませんでした。
試してみると、-initを使用してクラスFooを作成しましたが、Xcodeが提供するNSObjectのProjectAppDelegateクラスには何も含まれず、IBもありません。起動時になんとか呼び出されると思っていました。
何も起こらなかった。起動時に私の-initを呼び出さなかったので、何もしなかったと思います。ProjectAppDelegateから-initの呼び出しを追加すると、正しく実行されました。
なぜ例の-initメソッドが起動時に実行されるのか疑問に思っていますが、私の場合は実行されませんか?