Я и мой коллега спорим:
У нас есть одноэлементный класс, который используется в нескольких местах в нашей кодовой базе.
Первоначально класс был разработан таким образом, что вы могли получить объект класса, но этот объект не был бы полностью инициализирован.
] Под этим я подразумеваю:
mySingleton.getInstance().SomeMethod();
SomeMethod
вызовет ошибки, потому что класс не был инициализирован. Для правильной работы класса это должно произойти:
mySingleton.getInstance().initObject();
mySingleton.getInstance().SomeMethod();
В любом случае, у меня есть споры о том, что конструктор (вызываемый с первым экземпляром get) должен вызывать initObject
, чтобы не возникало ошибок .
Как вы думаете?
Моему коллеге нравится другой способ, поэтому он знает, когда класс инициализируется. (т. е. он вызывает initObject
в 1 конкретной строке кода и надеется, что больше ничего в этом не понадобится).