posted 15 years ago
I've implemented this pretty much exactly the way you have. The only difference I can think of is that my equivalent of 'PropertyManager' is more generic - I've called it 'Config', and the public API comments make no reference to the Properties class. To my mind, the backing Properties instance is an implementation detail. My class has some other config-related methods that don't use the Properties instance.
A nice thing about this setup is that your getter/setters can parse the fields and convert them into different types. For instance, if you have a numeric property, your getter/setter for that field can convert to/from int. This approach can be extended as far as Lists.