构造defaults时,将java.util.Properties作为参数传递似乎是一种创建属性层次结构的简便方法,在该属性中子级逻辑上继承了(祖父母)父母定义的值,并且如果需要,可以覆盖每个值。

同时,将这些defaults传递到属性对象的唯一方法是使用构造函数。如果我不控制对象的创建怎么办?没有设置器允许我随时执行此操作,例如setDefaults(Properties defaults)

在查看java.util.Properties的源代码时,我发现任何东西都不允许我扩展类并添加所需的setter。

我的问题如下:


您如何看待解决方案?
为什么API开发人员自己没有做到这一点?

最佳答案

看来java.util.Properties will not be changed ever,所以可以安全地扩展类并将功能带到那里。我还考虑将来使用其他API来实现该机制。

08-27 06:25