...
Treat public static fields as constants and declare them as final. Consider the use of enum types in the following example.
Code Block | ||
---|---|---|
| ||
public class MyClass { public static final int LEFT = 1; public static final int RIGHT = 2; } |
The FuncLoader static instance in the noncompliant example could have been declared as final as below.
Code Block | ||
---|---|---|
| ||
... public static final FuncLoader m_functions; ... |
...
Additionally for mutable static state one can define assessor methods and add appropriate security checks. Note that this is a different example and in this case the scope of the static variable has been changed to private.
...