2

「Constants.java」という名前のクラスを作成し、プログラム全体で使用されているすべての魔法の定数を宣言するか、ScreenMessage.properties という名前のプロパティ ファイルにすべてを入れる方が実用的ですか? Constants.java および Properties ファイルで返される値は、データベースから特定のメッセージを検索するために使用されます。

例:

Constants.java 内:

public static final String UNSUCCESSFUL_LOGIN = "MSGID001";

ScreenMessage.properties で:

UNSUCCESSFUL_LOGIN=MSGID001

[追加: 2013 年 5 月 18 日]: 実際、この質問の性質は次のとおりです: マジック定数を Constants.java に入れると、単純に "Constants.UNSUCCESSFUL_LOGIN" で定数の値を取得できますが、プロパティ ファイルを使用すると、プロパティファイルのファイル名のために、プログラムに別の定​​数を再度埋め込んでいます。プロパティファイルの値をロードするクラスのパッケージよりも、プロパティファイルが同じパッケージにない場合はより困難です。

4

3 に答える 3

3

It depends of your need.

Pros and cons :

If you have some a Constants.java, you have access to the type of your constants, which is not the case with a properties file.

On the other side, a properties file can be changed without recompiling...

Here, you seem to need some IDs to retrieve some messages from the database. Those messages are strongly linked to the use cases of your application (specific code around each of your messages). Hence I think you should just use some enums as suggested by Juned Ahsan. They will be easier to refer in your code and you will avoid typos.

于 2013-05-18T07:32:56.470 に答える
1

最近では、列挙型は定数を定義するための適切で受け入れられる選択肢だと思います

http://docs.oracle.com/javase/1.5.0/docs/guide/language/enums.html

于 2013-05-18T07:00:14.000 に答える