У меня есть класс, похожий на этот, и findbugz жалуется на «запись в статическое поле из метода экземпляра» (initialize()
и killStaticfield()
). Я не могу установить статическое поле в ctor.
- Как лучше всего решить эту проблему?
Достаточно ли будет поместить staticField в AtomicReference?
public class Something { private static SomeClass staticField = null; private AnotherClass aClass; public Something() { } public void initialize() { //must be ctor'd in initialize aClass = new AnotherClass(); staticField = new SomeClass( aClass ); } public void killStaticField() { staticField = null; } public static void getStaticField() { return staticField; } }