为什么我们需要Java中的Properties类?

用户名

我一直想知道为什么我需要一个Properties类,因为我总是可以创建一个HashMap并将键/值对保留在那里。可能是因为它减少了写入装载/存储属性文件的代码量。因为否则,我们必须创建BufferedReader并读取文件,然后拆分String和所有这些文件。但是,如果我们要从文件以外的来源获取键/值对,那么无论我们使用Properties类还是HashMap类,都可能没有任何区别。我只需要确认我的思维过程是否正确即可。

谢谢

斯蒂芬·C

Properties是因为Java 1.0中已Java的一部分....类以及之前 MapHashMap进行了介绍。实际上,您将看到Properties扩展了旧的(旧版)Hashtable类,该类是的前身HashMap

Properties以系统属性对象的形式在大部分Java应用程序中扮演着重要角色。在不引入兼容性问题的情况下,不能以该角色替换它。(即使引入第二(双)属性机制的更改也将是有问题的……因为某些代码写入了系统Properties对象。)

Properties具有一些HashMap无法提供的重要功能即能够以2种标准的人类可读格式加载和保存属性。


可能是因为它减少了写入装载/存储属性文件的代码量。因为否则,我们必须创建BufferedReader并读取文件,然后拆分String和所有这些文件。

是的。而且您会发现,属性文件的语法比使用split或正则表达式解析的语法更复杂查看此处描述的语法:

但是,如果我们要从文件以外的来源获取键/值对,那么无论我们使用Properties类还是HashMap类,都可能没有任何区别。

再次,正确。对于该用例,HashMap甚至可能更好。Properties/的大多数方法Hashtable都是同步的。如果您不需要同步,那将是一个(很小的)性能损失。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么我们需要纯<?>在Java中?

来自分类Dev

为什么我们在python中的每个方法上都需要相应的类函数?

来自分类Dev

为什么我们需要Clojure中的'in(require'[...]])?

来自分类Dev

为什么我们需要MapReduce中的“地图”部分?

来自分类Dev

为什么我们在MongoDB中需要created_at

来自分类Dev

为什么我们需要Python中的属性?

来自分类Dev

为什么我们在Typescript中需要任何类型?

来自分类Dev

为什么我们需要Kubernetes中的服务帐户?

来自分类Dev

我们为什么需要容器?

来自分类Dev

为什么我们需要IO?

来自分类Dev

在Java / Swing中,为什么我们将类用于动作侦听器?

来自分类Dev

Java:为什么我们可以从非子类访问字段和方法时需要扩展类

来自分类Dev

为什么我们需要抽象类而不是虚拟类?

来自分类Dev

如果包装器类已经不可变,为什么我们需要Atomic *类?

来自分类Dev

PyQt4:为什么我们需要在对super()的调用中传递类名

来自分类Dev

为什么我们需要在ASP.NET MVC中调用父类的空虚方法

来自分类Dev

为什么我们需要Rx中的CompositeDisposable,以及以前在普通Java中使用过什么?

来自分类Dev

在Java中,为什么我们需要在布尔表达式中减去一些数字?

来自分类Dev

JAVA-ThreadPoolExecutor 为什么我们需要在recheck过程中判断execute函数中的worker数量?

来自分类Dev

为什么我们需要将Apply和Applicative类型类分开?

来自分类Dev

自定义异常类-我们为什么需要它?

来自分类Dev

为什么我们需要在famo.us中使用TransitionableTransform类?

来自分类Dev

Android:扩展应用程序类。为什么我们需要实现单例模式?

来自分类Dev

为什么我们需要特定的类来处理请求和响应?

来自分类Dev

为什么我们需要需要的Java-9模块系统静态?

来自分类Dev

为什么不同于类的其他成员,我们为什么需要定义类的静态变量?

来自分类Dev

为什么我们在http响应消息中既需要状态代码又需要短语代码?

来自分类Dev

为什么我们在http响应消息中既需要状态代码又需要短语代码?

来自分类Dev

为什么我们需要使用指针为Go / C中的变量分配值,而不是C#/ Java

Related 相关文章

  1. 1

    为什么我们需要纯<?>在Java中?

  2. 2

    为什么我们在python中的每个方法上都需要相应的类函数?

  3. 3

    为什么我们需要Clojure中的'in(require'[...]])?

  4. 4

    为什么我们需要MapReduce中的“地图”部分?

  5. 5

    为什么我们在MongoDB中需要created_at

  6. 6

    为什么我们需要Python中的属性?

  7. 7

    为什么我们在Typescript中需要任何类型?

  8. 8

    为什么我们需要Kubernetes中的服务帐户?

  9. 9

    我们为什么需要容器?

  10. 10

    为什么我们需要IO?

  11. 11

    在Java / Swing中,为什么我们将类用于动作侦听器?

  12. 12

    Java:为什么我们可以从非子类访问字段和方法时需要扩展类

  13. 13

    为什么我们需要抽象类而不是虚拟类?

  14. 14

    如果包装器类已经不可变,为什么我们需要Atomic *类?

  15. 15

    PyQt4:为什么我们需要在对super()的调用中传递类名

  16. 16

    为什么我们需要在ASP.NET MVC中调用父类的空虚方法

  17. 17

    为什么我们需要Rx中的CompositeDisposable,以及以前在普通Java中使用过什么?

  18. 18

    在Java中,为什么我们需要在布尔表达式中减去一些数字?

  19. 19

    JAVA-ThreadPoolExecutor 为什么我们需要在recheck过程中判断execute函数中的worker数量?

  20. 20

    为什么我们需要将Apply和Applicative类型类分开?

  21. 21

    自定义异常类-我们为什么需要它?

  22. 22

    为什么我们需要在famo.us中使用TransitionableTransform类?

  23. 23

    Android:扩展应用程序类。为什么我们需要实现单例模式?

  24. 24

    为什么我们需要特定的类来处理请求和响应?

  25. 25

    为什么我们需要需要的Java-9模块系统静态?

  26. 26

    为什么不同于类的其他成员,我们为什么需要定义类的静态变量?

  27. 27

    为什么我们在http响应消息中既需要状态代码又需要短语代码?

  28. 28

    为什么我们在http响应消息中既需要状态代码又需要短语代码?

  29. 29

    为什么我们需要使用指针为Go / C中的变量分配值,而不是C#/ Java

热门标签

归档