lock()
.Config.makeDefaults()
method.Config
instance.Configurable
interface is meant to be used as an interface / paradigm for any class that separates
construction-time configuration methods from the rest of the instance's lifecycle.lock()
only once in the lifetime of the
instance.Config.locked()
that cannot be overridden, meaning that a call to this method is sure to do what the
implementation in Config
specifies, so that extending classes cannot avoid the exception by overriding
Config.locked()
.Config
abstract class.