记录器应该是最终的和静态的吗?

可以从许multithreading访问类。 在这种情况下必须是记录器也是最终的和静态的吗? 谢谢。

所有主要的java日志包( java.util.logginglog4j等)都是同步的并且是线程安全的。 即使从多个线程调用类,每个类的private final static记录器的标准模式也很好。

是的,记录器应该是静态的和最终的。 也最好是私人的。 每个类只需要一个记录器实例,除非您要动态更改日志首选项,否则最好将其设置为final。

记录器是线程安全的,您不必担心线程。

使记录器最终和/或静态不会以任何方式影响使用记录器的线程安全性。 如果从多个线程使用记录器实例,则确保使用线程安全记录器。

通常,记录器应该是私有静态final,但不要认为这使它成为线程安全的。 最常见的日志记录框架是线程安全的,所以如果你使用其中一个,你应该是好的。