コンストラクタの書き方すら忘れてます。*1
しかもObjective-Cはnilに対してメッセージ送れるので、コンストラクタ書き間違えて変数がnilの状態でもしばらくはエラー出さずに動くのです。ハマったハマった。
ところで、
If it can’t be initialized, they should release the object and return nil.
...中略...
Every class must guarantee that the init method either returns a fully functional instance of the class or raises an exception.
って書いてあるんですが、どっちが正しいんでしょう? 色んなコード見る限りはnil返すってのがありうるパターンだと思うんですが、nilは"a fully functional instance"なんでしょうか? それに、initでexceptionを投げる場合もあるんでしょうか?
*1:via: Javaのコンストラクタ(1) Javaのコンストラクタ(2)
*2:newメッセージでもいいよ