It's a good practice to make changes to local vars only in ONE constructor. All other constructors should call him as `this(...)`. Now we have a clear code duplication. See how it's done in, for example, `com.rultor.snapshot.Snapshot`. There are three constructors, but only one of them is making save operation. Others are just proxies.