【发布时间】:2012-08-23 00:52:42
【问题描述】:
我正在做一个项目,目前正在使用 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");
}
}
什么更有意义,为什么?
【问题讨论】:
标签: java inheritance logging abstract-class