在Java中,最好将一个对象(例如记录器)声明为
private static final Logger logger = LoggerFactory.getLogger();
或
private static final Logger LOGGER = LoggerFactory.getLogger();
我认为第一种选择更好,因为调用诸如此类的方法时
logger.info("Some information...");
它看起来更好并且可读性更好,但是我不确定什么是最佳实践?
另一种选择是将该对象声明为
private final Logger logger = LoggerFactory.getLogger();
但是我认为在Java中,如果您可以将某些内容声明为static
,那么您应该这样做。
答案 0 :(得分:1)
在我工作的地方,习惯上将这些对象大写,但这是因为它们是常量(final
),而不是因为它们是static
。在这种情况下,我还要将其声明为static
,因为记录器不应依赖于类的实例,而应依赖于类本身。
答案 1 :(得分:1)
通常,常量以大写字母声明。同样,它取决于项目的偏好。 这可能与线程Java naming convention for static final variables相同。
答案 2 :(得分:1)
根据Java约定,任何声明为static final的内容都应放在大写字母中,因此您的第一种情况应遵循该约定,对于最后一种情况,静态变量应遵循普通变量约定。