为什么 java.util.Properties 扩展 Hashtable<Object, Object> 而不是 Hashtable<String, String>?

尼古拉斯·查拉兰比迪斯

正如标题所述:我想找到为什么java.util.Properties扩展Hashtable<Object, Object>而不是Hashtable<String, String>?

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

我想知道是因为该方法setProperty(String key, String value)只接受 String 值,而属性基于 String 键值表示。完整的方法体在上面和这里的链接上:

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

这同样适用于该getProperty(String key)法和其他的人。

是否有任何特定原因扩展Hashtable<Object, Object>和使用字符串?在以这种方式使用Hastable<Object, Object>HashMap<Object, Object>喜欢时,我应该注意什么用例吗?

鲍勃·雅各布森

这是一个原因:该类早于泛型。

Since: JDK1.0

为泛型更新 Java 库的团队必须平衡“现在我们可以准确捕获语义”和“人们会有很多损坏的代码”。大多数情况下,库会更新为使用现有代码编译和运行,但需要付出一些代价。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如果Object数组是Object,为什么String数组不是String

来自分类Dev

为什么Java的HashTable是同步的?

来自分类Dev

Hashtable <String,Integer []> myhash = new Hashtable();

来自分类Dev

为什么在Netbeans 8中将java.util.Hashtable标记为“过时的集合”?

来自分类Dev

Hashtable <ArrayList <String>,boolean>的.contains()方法比ArrayList <ArrayList <String >>多快?

来自分类Dev

为什么将string []解释为object [],而不是object,但是我们可以将object obj = new string []分配?

来自分类常见问题

将java.util.Properties转换为HashMap <String,String>

来自分类Dev

为什么有<?在java.util.Collections.unmodifiableList API中扩展了T>而不是<T>

来自分类Dev

C#将List <object>转换为list <hashtable>

来自分类Dev

为什么Map <String,Object>不等于Map <String,?>

来自分类Dev

JAVA:为什么Object [] obj = {new Object [1],new Object [2]}而不是其他类?

来自分类Dev

Select-Object -Unique返回String而不是String数组

来自分类Dev

为什么List <String>不被List <Object>接受?

来自分类Dev

为什么不能将Object []转换为String []

来自分类Dev

Java中HashTable的单独链接

来自分类Dev

Java中HashTable的单独链接

来自分类Dev

为什么此Java 8流操作求值为Object而不是List <Object>或只是List?

来自分类Dev

flatMap返回List <Object>而不是List <String>后的Java Stream收集

来自分类Dev

flatMap返回List <Object>而不是List <String>后的Java Stream收集

来自分类Dev

Java Map <String,Map <String,Object >>转换为String并返回

来自分类Dev

为什么JavaScript原语不是Object的instanceof?

来自分类Dev

为了减少堆使用,将Chronicle Map用于java.util.String而不是.`intern`方法有什么好处?

来自分类Dev

为什么在String.valueOf中返回“ null” String而不是java null?

来自分类Dev

为什么使用Object('123')创建对象会创建String()对象,但typeof是'object'?

来自分类Dev

为什么firePropertyChange(String propertyName,Object oldValue,Object newValue)受保护而不公开?

来自分类Dev

为什么我得到[object object]而不是JSON?

来自分类Dev

为什么type(object)返回<class'type'>而不是<class'object'>?

来自分类Dev

为什么android返回Editable而不是String?

来自分类Dev

为什么要使用Char而不是String?

Related 相关文章

  1. 1

    如果Object数组是Object,为什么String数组不是String

  2. 2

    为什么Java的HashTable是同步的?

  3. 3

    Hashtable <String,Integer []> myhash = new Hashtable();

  4. 4

    为什么在Netbeans 8中将java.util.Hashtable标记为“过时的集合”?

  5. 5

    Hashtable <ArrayList <String>,boolean>的.contains()方法比ArrayList <ArrayList <String >>多快?

  6. 6

    为什么将string []解释为object [],而不是object,但是我们可以将object obj = new string []分配?

  7. 7

    将java.util.Properties转换为HashMap <String,String>

  8. 8

    为什么有<?在java.util.Collections.unmodifiableList API中扩展了T>而不是<T>

  9. 9

    C#将List <object>转换为list <hashtable>

  10. 10

    为什么Map <String,Object>不等于Map <String,?>

  11. 11

    JAVA:为什么Object [] obj = {new Object [1],new Object [2]}而不是其他类?

  12. 12

    Select-Object -Unique返回String而不是String数组

  13. 13

    为什么List <String>不被List <Object>接受?

  14. 14

    为什么不能将Object []转换为String []

  15. 15

    Java中HashTable的单独链接

  16. 16

    Java中HashTable的单独链接

  17. 17

    为什么此Java 8流操作求值为Object而不是List <Object>或只是List?

  18. 18

    flatMap返回List <Object>而不是List <String>后的Java Stream收集

  19. 19

    flatMap返回List <Object>而不是List <String>后的Java Stream收集

  20. 20

    Java Map <String,Map <String,Object >>转换为String并返回

  21. 21

    为什么JavaScript原语不是Object的instanceof?

  22. 22

    为了减少堆使用,将Chronicle Map用于java.util.String而不是.`intern`方法有什么好处?

  23. 23

    为什么在String.valueOf中返回“ null” String而不是java null?

  24. 24

    为什么使用Object('123')创建对象会创建String()对象,但typeof是'object'?

  25. 25

    为什么firePropertyChange(String propertyName,Object oldValue,Object newValue)受保护而不公开?

  26. 26

    为什么我得到[object object]而不是JSON?

  27. 27

    为什么type(object)返回<class'type'>而不是<class'object'>?

  28. 28

    为什么android返回Editable而不是String?

  29. 29

    为什么要使用Char而不是String?

热门标签

归档