我正在研究一些包含大量代码的遗留代码
private final Logger logger = LogManager.getLogger(ThisClassName.class);
我想知道键入"ThisClassName.class"是否有任何优势,而不是
LogManager.getLogger(getClass());
据我所知,没有,但我想知道使用getClass()是否有任何负面影响.谢谢.
如果您正在制作Logger
static
,则无法使用getClass()
.
此外,如果有一个实际调用该方法的子类,getClass()将模糊实际的类.例如,假设在类A中,方法X,您调用log.debug(),类B扩展类A,覆盖方法X,但在某些时候调用super.X.日志文件将显示B类,而不是A类.