@SergeyZolotarev - JonasH is not suggesting that you use a field, it just seems that way due to his C# background. There,
Instance
is typically a "property"; these look like fields at the call site, but are actually syntactic sugar for a getter or a setter, and so can contain logic. In Java you'd use a method named getInstance()
.