我正在使用Java util Logger。根据Logger.getLogger方法的文档,它说:“为一个命名的子系统查找或创建一个记录器,如果一个记录器已经使用给定的名字创建,它将被返回,否则会创建一个新的记录器。”每堂课只召唤一次还会有什么好处吗?使用Logger.getLogger()每次我需要它或每个类创建一次
选项1:
public class Myclass
static Logger logger = Logger.getLogger(Myclass.class);
public void method1() {
logger.log(...);
}
public void method2() {
logger.log(....);
}
}
选项2:
public class Myclass {
public void method1() {
Logger.getLogger(Myclass.class).log(...);
}
public void method2() {
Logger.getLogger(Myclass.class).log(...);
}
}
@Op De Cirkel的答案确实强调了使记录器为静态的问题 - 在大多数情况下它很好,但是如果您正在编写库代码,那么您可以考虑将其设置为非'静态'。你会得到一个每个实例化的代码来调用Logger.getLogger,但这是可以忽略的。 – 2011-06-06 05:04:09