Can you rework this a bit? Having a subclass for re-openable hash tables and then checking in the super-class whether we have actually the subclass seems like bad design.