最佳答案
我正在做一个项目,目前正在用 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");
}
}
第二个选项
对每个类、 super 和 subs 使用单独的日志:
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");
}
}
什么更合理,为什么?