1. ホーム
  2. java

[解決済み] Javaにおけるprivate static variableの用途は何ですか?

2022-03-06 19:24:32

質問

という変数が宣言されている場合 public static varName; というように、どこからでもアクセスできるようになります。 ClassName.varName . また、静的メンバはクラスのすべてのインスタンスで共有され、各インスタンスで再割り当てされることはないことも承知しています。

として変数を宣言していますか? private static varName; を宣言するのと同じです。 private varName; ?

としてアクセスすることはできません。 ClassName.varName または ClassInstance.varName を他のクラスから呼び出すことができます。

staticと宣言することで、その変数に他の特別な性質を与えることができますか?

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

としてアクセスすることはもちろん可能です。 ClassName.var_name しかし、このクラスが定義されているクラスの内部からのみ、このクラスが定義されているからです。 private .

public static または private static 変数は、しばしば定数のために使用されます。例えば、多くの人は定数をハードコードすることを好みません。 public static または private static という変数に意味のある名前をつけて、それを自分のコードで使うことで、より読みやすいコードになるはずです。(また、このような定数は final ).

例えば

public class Example {
    private final static String JDBC_URL = "jdbc:mysql://localhost/shopdb";
    private final static String JDBC_USERNAME = "username";
    private final static String JDBC_PASSWORD = "password";

    public static void main(String[] args) {
        Connection conn = DriverManager.getConnection(JDBC_URL,
                                         JDBC_USERNAME, JDBC_PASSWORD);

        // ...
    }
}

作るかどうか public または private は、変数をクラスの外から見えるようにするかどうかで決まります。