温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Java定义日志的方法

发布时间:2020-05-27 16:44:19 来源:亿速云 阅读:208 作者:鸽子 栏目:编程语言

在很多情况下,我们都会使用 SLF4J 来定义日志。

那么如何定义一个 Logger 呢?

相信绝大部分人都会定义为:

private static final Logger logger = LoggerFactory.getLogger(BigDecimalDemoUnitTest.class);

但是我们为什么要使用 private static final 来进行修饰呢?

  • private – 没有其他类可以劫持你的日志

  • static – 因为使用了静态,所以每一个类就只有一个日志,同时可以避免尝试序列化日志

  • final – 在类的生命周期中,不需要修改日志

同时,你可以定义变量 log 来替代 logger,这样能够减少输入的字符数。当然这个也需要根据你的项目要求来定了。

当然还有下面的一种情况,考察日志代码:

protected final Logger log = LoggerFactory.getLogger(getClass());

上面有关日志的定义与我们的规则是完全相反的。

上面的代码允许你在所有具有继承关系的类中使用相同的日志名(与实际的类名相同)。

例如:

如果类 Bar Extends Foo,那么上面 2 个类的日志将会 log 到 Bar logger 中。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI