java - 初始化静态最终变量

标签 java

我想知道,在初始化静态最终变量的各种方法上有什么不同?

private static final int i = 100;

private static final int i;
static {
    i = 100;
}

这两者有什么不同吗?

最佳答案

如果您只是设置变量,则两种形式是等效的(您应该使用前者,因为它更具可读性和简洁性)。

static {} 形式存在于您还需要执行除变量赋值之外的语句的情况。 (有点做作)示例:

private static final int i;
static {
    establishDatabaseConnection();
    i = readIntFromDatabase;
    closeDatabaseConnection();
}

关于java - 初始化静态最终变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3165833/

相关文章:

java - NoSql 之战——幸存者?

java - 将框架添加到java项目中

java - 如何在放心的java中从值中找到键?

java - 创建带有背景图像的表单(JLayeredPane)

Javafx - 我应该创建一个静态类来控制我的AI还是为每个类创建一个对象?

java - 所有 JUnit 测试运行时的 Eclipse 通知

java - 比较两个数组列表以返回最新日期

java - DateFormat 和 SimpleDateFormat 的 parse() 的区别

Java NIO FileLock 允许其他进程写入锁定的文件

java - Android 将自定义图像设置为标签文本