【发布时间】:2012-04-14 07:40:58
【问题描述】:
我认为创建java.util.logging.Logger 实例的常用习惯是这样的:
public class SomeClassName {
private static final Logger LOG = Logger.getLogger(SomeClassName.class.getName());
}
当我重构我的代码(例如,更改类的名称)时,我的 IDE 将适当地更改行。不过,我仍然需要重复班级的名称,这仍然让我感到困扰。我真正想做的是Logger.getLogger(getName()) 或Logger.getLogger(class.getName()),但这在静态初始化中是不合法的Java。
有没有更好的方法来获取不涉及重复自己的记录器?
【问题讨论】:
-
Logger logger = new logger.getLogger- 我会更担心即将到来的 logpocalypse! -
仅供参考,请参阅sl4j FAQ 中的解释,不同的框架但可能相同的理由。
-
谢谢,@assylias!该常见问题解答非常清楚地解决了我的具体问题。即“上述记录器声明习语不抵抗类之间的剪切和粘贴”。但是,它没有提供解决方案。