java - 在程序启动时加载常量

标签 java static

当我定义静态或常量成员时,例如:
public static final Font BIG_FONT = new Font("", Font.BOLD, 18);
我注意到它们只在我第一次使用它们时加载,这要么导致运行时卡住,要么迫使我通过在程序启动时强制“使用”常量以某种方式预加载它们。

难道这种类型的静态成员不应该在程序启动时加载而不是在第一次使用时等待加载吗?我如何确保它们已预加载?

提前致谢。

最佳答案

在 Java 中,静态是在第一次使用类时初始化的,而不是在第一次使用静态成员本身时。您可以使用该类的任何其他成员强制“预加载”,不一定是静态字段本身。

关于java - 在程序启动时加载常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8693872/

相关文章:

java - 通过 ssh 在远程计算机上作为后台进程运行 jar

c++ - 如何通过 Code::Blocks 中的静态链接创建独立程序

java - 如何从静态方法获取总计

maven - Jersey 库错误(NoSuchMethod 然后 IncompleteClassChangeError)

.net - 为什么静态类只能有静态成员?

c++ - 静态变量与堆栈变量 : thread safety vs stack size?

c++ - C++ 中的静态构造函数和 fatal error LNK1120 : 1 unresolved externals

java - HashMap实现概念

java - 从套接字获取输入流

java - 如何在Quarkus中获取静态值的配置值