如上图所示(上图是通过Run Configurations打开的,实际也可以通过Debug Configurations打开Debug的配置界面)
Arguments下面有两个代码编辑区,Program arguments和VMarguments。这是干什么用的呢?让我们用一个例子来说明。
Program arguments中写:pro1pro2 pro3
VMarguments中写:-DsysProp1=sp1 -DsysProp2=sp2(注意加前面的-D)
然后写一个java文件
代码如下:
运行结果:
实际上program arguments中的值作为args[]的参数传入的,它通过主函数中的args来取值。
而VMArguments是设置的虚拟机的属性,要传给java虚拟机的。调用方法:System.getProperty("PropertyName")。它与下面这条语句有相同的功能:
java -DsysProp1=sp1 -DsysProp2=sp2 test.ArgsTest pro1 pro2pro3
System.getProperty("PropertyName"):根据参数返回一些系统信息。具体默认系统参数如下(当然我们可以再Run Configuration或者Debug Configuration中自定义getProperty中的key(即虚拟机参数key),通过 “-D” + PropertyName,譬如: -DprepertyName="hello world")
java.version |
Java运行时环境版本 |
java.vendor |
Java运行时环境供应商 |
java.vendor.url |
Java供应商的 URL |
java.home |