小编典典

Java中私有静态变量有什么用?

all

如果一个变量被声明为public static varName;,那么我可以从任何地方访问它ClassName.varName。我也知道静态成员由类的所有实例共享,并且不会在每个实例中重新分配。

声明变量与声明变量有private static varName;什么不同private varName;吗?

在这两种情况下,它都不能作为ClassName.varNameClassInstance.varName从任何其他类访问。

将变量声明为静态是否会赋予它其他特殊属性?


阅读 84

收藏
2022-08-15

共1个答案

小编典典

当然,它可以作为 访问ClassName.var_name,但只能从定义它的类内部 - 那是因为它被定义为private.

public staticprivate static变量通常用于常量。例如,许多人不喜欢在他们的代码中“硬编码”常量;他们喜欢使用有意义的名称创建一个public staticprivate 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);

        // ...
    }
}

是否成功publicprivate取决于您是否希望变量在课堂外可见。

2022-08-15