【发布时间】:2019-01-24 09:35:33
【问题描述】:
所以我浏览了Math.java 源代码,发现创建了一个持有者类来保存randomNumberGenerator 静态变量。这是相关的代码。
public final class Math {
// other methods.
public static double random() {
return RandomNumberGeneratorHolder.randomNumberGenerator.nextDouble();
}
private static final class RandomNumberGeneratorHolder {
static final Random randomNumberGenerator = new Random();
}
}
IMO,我们可以简单地将 randomNumberGenerator 声明为 private static final 在 Math 类本身内。
我的问题是,为此创建一个单独的持有者类有什么好处吗?或者这只是个人喜好。
【问题讨论】:
标签: java java-8 design-decisions