1. ホーム
  2. java

[解決済み] Javaで定数を実装するのに最適な方法は何ですか?[クローズド]

2022-03-14 01:47:04

質問

こんな例もあるんですね。

public class MaxSeconds {
   public static final int MAX_SECONDS = 25;
}

で、定数を包むConstantsクラスがあり、static finalと宣言していると仮定しました。私はJavaをほとんど知らないので、これが定数を作成するのに最適な方法かどうか疑問に思っています。

どのように解決するのですか?

それはまったく問題ありませんし、おそらく標準的なものでさえあります。

(public/private) static final TYPE NAME = VALUE;

ここで TYPE はタイプです。 NAME はすべて大文字の名前で、スペースはアンダースコア、そして VALUE は定数値です。

定数を独自のクラスやインターフェイスに置かないことを強くお勧めします。

余談ですが、finalと宣言された変数でmutableのものは、まだ変更可能です。ただし、その変数が別のオブジェクトを指すことはありません。

例えば

public static final Point ORIGIN = new Point(0,0);

public static void main(String[] args){

    ORIGIN.x = 3;

}

それは合法であり ORIGIN は、(3, 0)にある点になります。