使用抽象类进行 Java 日志记录
2022-08-31 13:27:59
我正在研究一个项目,目前正在使用log4j实现一些日志记录,我很好奇我应该如何实现日志。我正在启动的两个实现如下:
第一个选项
对该类和所有子类使用来自超类的单个日志:
public abstract class AbstractFoo {
protected static Log LOG = LogFactory.getLog(AbstractFoo.class);
...
}
public class Foo extends AbstractFoo {
public void someMethod() {
LOG.info("Using abstract log");
}
}
第二种选择
对每个类、超级类和子类使用单独的日志:
public abstract class AbstractFoo {
private static Log LOG = LogFactory.getLog(AbstractFoo.class);
...
}
public class Foo extends AbstractFoo {
private static Log LOG = LogFactory.getLog(Foo.class);
public void someMethod() {
LOG.info("Using own log");
}
}
什么更有意义,为什么?