-
系统属性 (System Properties):
- 系统属性是与 Java 应用程序相关的键值对。它们由 Java 运行时环境(JRE)维护,常用于存储 Java 运行时的配置信息。
- 系统属性通常用于 Java 程序内部,以反映程序行为或特定的 Java 环境设置,如文件编码、用户目录、操作系统名称等等。
- 可以编程地在应用程序中设置或修改,通常通过
System.setProperty()来设置属性。
-
环境变量 (Environment Variables):
- 环境变量是在操作系统层面定义的,影响整个系统或用户会话的配置参数。
- 它们在操作系统中配置,用于提供有关系统的信息,或者为操作系统中运行的应用程序提供配置信息,如路径、主目录等。
- 环境变量一般由操作系统设置,不在 Java 程序运行时动态更改。
核心区别:
| 特性 | 系统属性 (System Properties) | 环境变量 (Environment Variables) |
|---|---|---|
| 定义与管理 | 由 Java 运行时环境管理,特定于 Java 应用 | 在操作系统层面定义,适用于整个系统或用户会话 |
| 作用范围 | JVM 进程内的 Java 应用有效 | 操作系统全局,适用于所有系统进程 |
| 获取方法 | System.getProperty(String key) |
System.getenv(String name) |
| 修改方式 | 可以在 Java 程序中使用 System.setProperty 动态设置 |
通过命令行、系统设置界面或脚本修改,不可通过 Java 更改 |
| 应用场景 | 配置 Java 程序的内部行为(如日志、编码、路径) | 设置操作系统级别的配置(如 PATH 、HOME 目录) |
浙公网安备 33010602011771号