簡単な質問です。コードを確認すると、多くの変数がクラスまたはメソッドで複数回宣言されていることに気付きました...例:
public Long dbInsertCheckin(final String Class) {
final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
...
}
と
public class SmashDataSource {
final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
final SimpleDateFormat sdf = new SimpleDateFormat("EEEE");
final SimpleDateFormat timeFormat = new SimpleDateFormat("HHmm");
...
}
これにより、複数の場所で使用する「dateformat」、「sdf」、または「timeformat」などを宣言する代わりに、アプリケーションクラスでこれらをグローバルに宣言し、どこでも参照する方が理にかなっていないのではないかと考えました。のようにしたかった
public class MyApp extends Application {
public final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
public final SimpleDateFormat sdf = new SimpleDateFormat("EEEE");
public final SimpleDateFormat timeFormat = new SimpleDateFormat("HHmm");
後で他のクラスでそれらを参照します。
MyApp.dateformat
Myapp.sdf
これは、パフォーマンス/メモリ使用量の観点から優れていますか? これをしない理由はありますか?私には、それらを複数回宣言すると、1回の最終宣言と比較して、より多くのメモリを消費するように思えます....しかし、コンパイラが最適化をどのように行うかはわかりません。