No, there is no way to do this. Even at the JVM bytecode level, a chain of <init> methods (constructors) can be called no more than once on any given object.
The usual answer is to reorganize the code into a regular instance method, but as you said, this is not possible.
The best you can do is find a way to redesign to get around the need for reinitialization. Alternatively, if you need certain behavior in the parent constructor, you can duplicate it yourself.
source share