gpt4 book ai didi

java - Java中控制类加载顺序

转载 作者:行者123 更新时间:2023-12-01 16:41:55 28 4
gpt4 key购买 nike

我创建了一个包含一堆属性值的类。为了初始化该类,我必须调用一些静态方法“configure()”,该方法从 XML 文件对其进行配置。

该类应该用于存储一些数据,以便我可以编写

PropClass.GetMyProperty();

我从主程序中的静态 block 调用configure(),这样我就可以在任何地方使用它

但是

如果我将其他类的静态常量成员设置为“PropClass”中的值,则会得到 null,

class SomeClass {

static int myProp = PropClass.GetMyProperty();

}

这可能是因为该表达式是在调用配置之前计算的。我该如何解决这个问题?

如何强制首先执行对 configure() 的调用?谢谢

最佳答案

您可以使用静态代码块来做到这一点

static {
configure();
}

静态初始化 block 的语法?剩下的就是关键字 static 和一对匹配的花括号,其中包含加载类时要执行的代码。 taken from here

关于java - Java中控制类加载顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/741512/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com