怎么定义 logger

随便打开一个 spring 的 源文件,比如  PathMatchingResourcePatternResolver.class

里面是这样定义logger 的 

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
private static final Log logger = LogFactory.getLog(PathMatchingResourcePatternResolver.class);
  1. 这是一个类变量,静态的,内存地址一旦分配就不变了
  2. 私有的,只能在这个类的内部使用
  3. final 不能被二次赋值

这样的好处是:

一个这个类只有一个logger,所有这个类的实例均使用这个logger ,这个logger不会产生被二次赋值之类的低效操作

原文地址:https://www.cnblogs.com/zno2/p/5929749.html