Alan, Thanks for your continued support.
I find the 'static factory method' approach interesting, but I'm a little confused. You cite 'being able to return a subclass' as an advantage. However, you also recommend a private constructor and classes with private constructors can never be subclassed?
Regards, Richard.