java – 静态初始化好的编程实践?

前端之家收集整理的这篇文章主要介绍了java – 静态初始化好的编程实践?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
Java中,我们使用静态初始化块:
private static final ApiKey API_KEY;

static {
    API_KEY = new ApiKey();
}

我在想,

>这是一个很好的编程实践吗?
>我们应该在哪里使用这种模式?

提前致谢.

解决方法

在某种程度上这是一个味道的问题.对我来说,只要有以下优点:

你按照你所做的那样,保持最后的位置
>您确保引用的对象是ummable和线程安全的

静态学倾向于使写作更好的测试变得更加困难.如果您发现要开始修改静态,那么您可能需要再次查看设计.

考虑看看Google Guice和它非常好的Singleton implementation.

当然,如果你的应用程序是一个10行的单一类实验,那么这很重要.

请注意,在您的示例中,您可以简化为:

private static final ApiKey API_KEY = new ApiKey();

这并不总是可能的.也许你已经省略了一些更复杂的初始化代码?在这种情况下,Guice再次值得一看.

猜你在找的Java相关文章