0

Android アプリ用の SQLite データベースを作成したときに、他のクラスを拡張しないヘルパー クラスを作成しました。データベースをセットアップするだけで、この例では PlayGame と呼ばれます。ここに示すように、内部にプライベート クラスがあります。

 private static class DbHelper extends SQLiteOpenHelper

なんらかの理由で SQLiteExample というメイン UI クラスでデータベースを使用する場合、このように毎回インスタンスを作成する必要があります。

PlayGame entry = new PlayGame(SQLiteExample.this);
            entry.open();
            entry.createEntry(name, hits);
            entry.close();

他の Activity クラスで PlayGame と呼ばれるこのデータベース クラスのインスタンスを多数作成しています。私のほとんどすべてのメソッドと同様に、データベースに情報を読み込んだりデータベースから情報を読み込んだりするなど、必要な機能を実行するためにインスタンスを作成する必要があります。

そのため、インスタンスの作成はメモリに負担がかかり、避けるのが最善であるという Android ドキュメントのベスト プラクティスを読みました。この場合、これを行うためのより良い方法はありますか? 私の例はメモリの悪い使い方のように見えますか?

4

1 に答える 1

0

使用するすべてのインスタンスにシングルトンを使用します。オブジェクトの新しいインスタンスを作成する代わりに、同じオブジェクトを使用します。 http://en.wikipedia.org/wiki/Singleton_pattern

于 2013-01-28T04:19:57.897 に答える