java - 解决循环静态引用

标签 java static circular-reference initializer

我有 2 个静态初始化器试图互相调用:

  • 配置类中的一个,从属性文件中读取配置参数;
  • LoggerFactory 类中的一个,它设置默认的日志记录参数。

问题是它们相互引用:

  • 配置类需要记录器在读取属性文件时记录潜在的 I/O 问题。
  • LoggerFactory 需要配置文件来设置日志文件名、日志模式和默认日志级别。

这显然是不对的,我到处都是 NPE。

是否有处理这种情况的标准方法?

最佳答案

使用不需要配置的默认记录器,并在加载可配置记录器时替换。这样您就可以以一种简单的方式轻松解决循环依赖。

关于java - 解决循环静态引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11855601/

相关文章:

java - 计算 "if"语句为真的次数

java - 如何过滤 RXJava 中 observable 发出的重复值?

java - 在 Java 中继承一个静态变量

c - 如何将静态结构用于静态函数? (像一个全局)

java - 如何在 Maven 的本地项目中安装依赖项?

java - 在java中使用cacheManager清除缓存

c++ - 定义 const 变量的最佳方式

.net - 如何在F#中声明循环依赖的抽象类

c# - 分层对象和 AutoFixture

C链表循环引用