Java类中的静态final BigDecimal

Ros*_*tel 2 java

我有点不确定我是如何实现的,我希望得到一些反馈.

我有一个类,Metric,它需要在返回之前将一些数字乘以给定的百分比.它们返回BigDecimal,所以我创建了类变量BigDecimal来存储该百分比,然后在返回时将它们相乘.

public class Metric extends Model {
    private static final BigDecimal percentage = new BigDecimal("1.2");

    public BigDecimal getMetric() {
        return new BigDecimal(getValue()).multiply(percentage);
    }
}
Run Code Online (Sandbox Code Playgroud)

静态决赛是否存在任何问题并立即用新声明宣布?此外,我试图研究BigDecimal是否是线程安全的,我找不到一个肯定的答案.对此的反馈将不胜感激.

Tom*_*m G 6

BigDecimal是不可变的,因此是线程安全的.此外,像这样的静态最终值没有问题 - 事实上,它是推荐的.