2012-03-12 50 views
0

我的代码当前患有“可能不安全赋值给构造函数中的非最终静态字段”(AssignmentToNonFinalStatic in PMD)。如何避免“可能不安全的赋值给构造函数中的非最终静态字段”(AssignmentToNonFinalStatic)

类写成一个单例类,受此警告属性看起来像这样

私人静态字符串myProperty的;

public SystemPropertyUtils() throws ConfigException { 
    someMethodThrowingConfigException(); 
    myProperty = "someValue" + this.someOtherValueFromAThreadSafeString; 
} 

有没有否定该警告的详尽方式:

,并通过这个结构填充?

回答

4

不要在构造函数中设置静态字段。在这种情况下,使该字段成为非静态字段。我不得不怀疑你不需要构造函数。相反,您可以在静态初始化块或静态方法中初始化静态字段。