gpt4 book ai didi

java - 为什么 java.util.Properties 扩展 Hashtable 而不是 Hashtable

转载 作者:行者123 更新时间:2023-11-30 06:10:09 26 4
gpt4 key购买 nike

正如标题所述:我想找到为什么 java.util.Properties 这个问题的答案延伸Hashtable<Object, Object>而不是Hashtable<String, String>

class Properties extends Hashtable<Object,Object> { ... }

我想知道因为方法 setProperty(String key, String value) 仅接受字符串值,并且属性基于字符串键值表示。完整的方法主体位于上面的链接和此处:

public synchronized Object setProperty(String key, String value) {
return put(key, value);
}

getProperty(String key) 也是如此。方法和其他方法。

有什么具体原因延长Hashtable<Object, Object>并使用字符串?在使用 Hastable<Object, Object> 时我应该注意什么用例吗?或HashMap<Object, Object>像这样吗?

最佳答案

原因之一:该类早于泛型。


自从:
JDK1.0

更新泛型 Java 库的团队必须平衡“现在我们可以准确捕获语义”和“人们将会遇到很多损坏的代码”。大多数时候,库都会更新为使用现有代码进行编译和运行,但会牺牲一些特定性。

关于java - 为什么 java.util.Properties 扩展 Hashtable<Object, Object> 而不是 Hashtable<String, String>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50425851/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com