定数の定義
1. [必須] マジック値 (つまり、未定義の定数) をコード内に直接出現させることはできません。
カウンターの例: String key =" Id # taobao _" tradeId;
cache . put(key , value);
2. 【必須】long または Long を初期化する場合は、l の小文字ではなく、大文字の L を使用する必要があります。小文字は数字の 1 と混同されやすく、誤解を招きます。
説明: Long a = 2 l; 数値の 21 として記述されるのか、Long 型の 2 として記述されるのか?
3. [推奨] 使用しないでください。 a 定数クラスはすべての定数を保持します。これらの定数は定数関数に従って分類され、個別に保持される必要があります。たとえば、Cache 関連の定数はクラス CacheConsts の下に配置され、システム構成関連の定数はクラス ConfigConsts の下に配置されます。
注: 大規模で包括的な定数クラスの場合、変更された定数を見つけるには検索機能を使用する必要がありますが、これは理解や保守には役立ちません。
4. [推奨事項] 定数の再利用には、アプリケーション間共有定数、アプリケーション内共有定数、サブプロジェクト内共有定数、パッケージ内共有定数 、クラス内共有定数の 5 つのレベルがあります。
1) アプリケーション間で定数を共有する: 定数をセカンドパーティのライブラリ (通常は client.jar の定数ディレクトリ) に置きます。
2) アプリケーション内共有定数: ライブラリのモジュールの定数ディレクトリに配置されます。
反例: わかりやすい変数も、アプリケーション内の共有定数として均一に定義する必要があります。2 人の攻城戦マスターは、2 つのクラスで「はい」を表す 変数を定義しました。
クラス A の場合: public static Final String YES = " yes " ;
クラス B の場合: public static Final String YES = " y " ;
A .YES .equals(B .YES)、true であることが期待されていましたが、実際には false が返され、オンラインで問題が発生しました。
3) サブプロジェクト内の共有定数: つまり、現在のサブプロジェクトの定数ディレクトリ内。
4) パッケージ内の共有定数: つまり、現在のパッケージの下の別の定数ディレクトリにあります。
5) クラス内の共有定数: クラス private static Final 内で直接定義されます。
5. [推奨] 変数の値が範囲内でのみ変化する場合は、Enum クラスを使用します。名前以外の拡張属性がある場合は、Enum クラスを使用する必要があります。次の例の数字は、曜日を示す拡張情報です。
## 正の例: public Enum { MONDAY(1), TUESDAY(2), WEDNESDAY(3), THURSDAY(4), FRIDAY(5),
土曜日( 6 ) 、日曜日( 7 ); }