Integer源码的getInteger(String nm, Integer val)方法的第一个参数描述是the system property with the specified name.那么实际上到底nm是什么?
public static Integer getInteger(String nm, Integer val) {
String v = null;
try {
v = System.getProperty(nm);
} catch (IllegalArgumentException | NullPointerException e) {
}
if (v != null) {
try {
return Integer.decode(v);
} catch (NumberFormatException e) {
}
}
return val;
nm就是系统参数的名字,例如在程序启动时加入的-Dparam=1,通过Integer.getInteger("param", 0)获取自定义参数,另外也可以是系统内置的参数例如:java.version、java.vendor等,详细的系统参数System Properties