Cursorをcloseするタイミング

先日書いた「AndroidでSQLiteをつかう」にのせたコード(をベースにしたコード)をコードレビューしてもらった。
いろいろと指摘されたことをメモしておく。

主に改善点があるコード

改善点
・JSON文字列を作るにはJSONArrayとJSONObjectを使う。
・Cursor(に限らず)を閉じるというような処理は、finallyの中でやるのが鉄則。

改善後のコード

JSONArrayとJSONObjectはそういうのがあるんだなという感じでOK。

Cursorをcloseするタイミングに関しては「ほぉ」と思った。
僕はここ3年間ずっとPHPをやってきたが、PHPには「finally」は存在しない。なので「finally」の存在をすっかり忘れていた。

SQLiteDatabaseも同様のタイミング(finallyの中)でcloseすると間違いはない。
また try ~ catch まみれになるがJavaはそういうものらしいので気にしない。

参考 : カーソルが解放されるタイミング (2)

おわり。

Pocket

Posted in Android, Java.

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">