次のようなコードを宣言したコードを見つけました
private final static String API_RTN_SUCCESS = "0";
private final static String API_RTN_ERROR = "1";
public static final String SHARED_PREFERENCE_CONFIG = "shared_preference_config";
public static final String STARTUP_SETTING_KEY = "startup_setting";
それらの違いは何ですか、または同じですか?または、private
またはpublic
で異なりますか?
まったく違いはありません。 8.3.1-クラス-Java言語仕様のフィールド修飾子 、
2つ以上の(個別の)フィールド修飾子がフィールド宣言に現れる場合、必須ではありませんが、FieldModifierのプロダクションで上記に示した順序と一貫した順序で現れることが慣例です。
フィールドの場合、上記のプロダクションは次の順序で修飾子をリストします。
@Annotation
public
protected
private
static
final
transient
volatile
メソッドの場合:
@Annotation
public
protected
private
abstract
static
final
synchronized
native
strictfp
それらは同じです。修飾子の順序は重要ではありません。また、Javaで修飾子が使用されるallコンテキストでも同じルールが適用されることに注意してください。
ただし、ほとんどのJavaスタイルガイドは、修飾子に対して同じ特定の順序を推奨/義務付けています。この場合、public static final
です。
private static final String API_RTN_ERROR= "1";
private final static String API_RTN_ERROR= "1";
static private final String API_RTN_ERROR= "1";
static final private String API_RTN_ERROR= "1";
final static private String API_RTN_ERROR= "1";
final private static String API_RTN_ERROR= "1";
上記のすべてが同じでも、最初の3つの位置は交換可能です。
彼らは同じです
private final static String API_RTN_ERROR = "1";
private static final String API_RTN_ERROR= "1";
それらの違いは何ですか、または同じですか?
静的および最終の順序の変更について話している場合、はい、それらは同じです。
プライベートとパブリックで違いますか?
いいえ、プライベートおよびパブリックで任意の順序を使用できます。違いは、プライベート変数はクラスの外部から直接アクセスできないことです。
もちろん同じです。それはあなたの習慣と好みに依存するだけです:-)。メンバーとメソッドにも公開静的最終順序を使用します