大家一般写日志的时候是否是:
private static final Logger logger = XXXXXXXX;
为什么要是static 
为什么要是final
为什么为什么?

解决方案 »

  1.   

    定义成static final,logger变量不可变,读取速度快
      

  2.   

    看情况了。static 是加载即创建实例。使用的时候可以直接拿来;final 是本 logger 不能再指向其他 Logger 对象。
      

  3.   

    static 修饰的变量是不管创建了new了多少个实例,也只创建一次,节省空间,如果每次都创建Logger的话比较浪费内存;final修饰表示不可更改,常量
      

  4.   

    将域定义为static,每个类中只有一个这样的域.而每一个对象对于所有的实例域却都有自己的一份拷贝.用static修饰既节约空间,效率也好.final 是本 logger 不能再指向其他 Logger 对象
      

  5.   

    恩..应该是这样了..
    挺简单的问题,想歪了,真2,谢谢各位老外的BLOG上有篇文章写的不错,关于这个的
    http://www.nofluffjuststuff.com/blog/scott_leberknight/2007/03/loggerisnotstaticfinal.html