我也不会 相反,我会在两种情况下都使用正确的类。
public abstract class AbstractFoo { protected final Log log = LogFactory.getLog(getClass()); ...}public class Foo extends AbstractFoo { public void someMethod() { log.info("Using abstract log"); }}如果您不进行大量日志记录(无论如何是个好主意),则可以改用一种方法。
public abstract class AbstractFoo { protected Log log() { return LogFactory.getLog(getClass()); } ...}如果有一个类经常调用它,则可以覆盖它以提供一个缓存的实例。



