gpt4 book ai didi

java - 将静态类字段重置为初始值

转载 作者:行者123 更新时间:2023-11-29 09:11:34 25 4
gpt4 key购买 nike

我注意到这个问题是针对单元测试的相关问题提出的,但我的问题是更通用的编程,我需要一些建议。

我正在编写一个软件,它使用 Java 反射来选择和改变属于特定库的字段的值。然后我运行与库相关的代码,记录该字段的效果,然后转到另一个字段。

问题是我认为初始化库代码的行为重置了它需要运行的字段。事实证明它没有。而且我不知 Prop 体哪些字段可能已经更改(因为它们很多,图书馆非常大)。所以我需要一种重置所有字段的方法,而不涉及重新启动我的整个使用反射的代码。

我在其他问题中看到,ClassLoaders 可以通过重新加载受影响的类来做到这一点。但是评论还说,这只有在您首先创建加载这些类的类加载器时才有效。

谁能建议在正常 Java 执行中可靠地重置类的静态字段的方法?

最佳答案

我会说,为每个重置所有属性的类写一个静态同步方法,当你在类加载器上调用它时同步(getClass().getClassloader())

关于java - 将静态类字段重置为初始值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12081982/

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