静的定数のコレクションがある場合、それらをクラスまたはインターフェイス(Java)に配置した場合にさまざまなプロジェクト間で共有できるように、一元的に宣言する必要があります。
過去にそれらがほとんどクラスに配置されるのを見たことがありますが、クラスはインスタンス化されないのでインスタンス化されるべきではないので、インターフェイスでより優れているかもしれませんが、インターフェイスはどのクラスでも実装されるべきではないと考えました
public class ErrorCodes {
public static final String ERROR_1 = "-1";
public static final String ERROR_2 = "-2";
}
または
public interface ErrorCodes {
public static final String ERROR_1 = "-1";
public static final String ERROR_2 = "-2";
}
彼らが強いつながりを持っているなら、私はそれらを列挙型に入れます:
public enum Error {
ERROR_1("-1", "foo went wrong"),
ERROR_2("-2", "bar went wrong");
private final String id;
private final String message;
Error(String id, String message) {
this.id=id;
this.message=message;
}
public String getId() {
return id;
}
public String getMessage() {
return message;
}
}
利点は、コードにタイプセーフを設定できることと、IDベースのルックアップを簡単に追加できることです(HashMap<String,Error>
コンストラクターでを作成するか、単にをループすることによってvalues()
)。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加