Giliのコメントが述べているように、コンストラクターに物事を入れる正当な理由は、finalフィールドの使用です。
ただし、コンストラクターで初期化すると、オブジェクトの寿命が少し長くなりonCreate
ますが、すぐに呼び出されるため、あまり考えていません。
それは私の理想的な反対ですが、私は活動メンバーの初期化のためのコンストラクタを避け、に依存しているかonResume()
とonPause()
私のアプリが扱っていることのリソースについて。
以下のためにonCreate()
私は通常、ローカル変数へのビューのマッピングを行うためにそれを使用します。android-annotationsはすでにそれを行っているのでonCreate()
、アクティビティのメソッドを持っていることはめったにありません。私はまだサービスでそれを使用しています。
ただし、メンバーを見ると、初期化されている可能性があります
それらには、適切なタイミング(onResumeまたはonPause)に呼び出す必要のある「close」メソッドがあります。
それらはビューの一部になります。つまり、初期化してからonCreateを呼び出す必要があります。
これらは定数であり、とにかくコンストラクターに入れる必要はありません。静的なファイナルで十分です。これには、静的ブロックで初期化できるペイント定数とパス定数が含まれます