(1)出于资源利用的考虑,LOGGER的构造方法参数是Class,决定了LOGGER是根据类的结构来进行区分日志,所以一个类只要一个LOGGER就可以了,故static
(2)final表示一种编程习惯,表示该类的LOGGER只是记录该类的信息,否则日志会无法提供可以令人信服的记录
----------------------------------------------------------------------------------------
网上搜集了一些简单的答案:
1、定义成static final,logger变量不可变,读取速度快;
2、static 修饰的变量是不管创建了new了多少个实例,也只创建一次,节省空间,
如果每次都创建Logger的话比较浪费内存;
3、常量将域定义为static,每个类中只有一个这样的域.
而每一个对象对于所有的实例域却都有自己的一份拷贝.,
用static修饰既节约空间,效率也好。
4、final修饰表示不可更改,
5、final 是本 logger 不能再指向其他 Logger 对象