java中的系统属性

时间:2013-07-18 22:26:30

标签: java properties jvm

我想知道java中的System.setProperty是否会导致为整个JVM设置属性。如果我在方法中设置此属性将为weblogic服务器中的整个JVM设置。

1 个答案:

答案 0 :(得分:1)

  

YES

java.lang.System #setProperty源代码:

public static String setProperty(String key, String value) {
    checkKey(key);
    SecurityManager sm = getSecurityManager();
        if (sm != null) {
        sm.checkPermission(new PropertyPermission(key,
        SecurityConstants.PROPERTY_WRITE_ACTION));
    }

    return (String) props.setProperty(key, value);
}

props只是java.lang.System中的私有静态成员。

private static Properties props;

因此,java.lang.System#setPropertyjava.lang.System#getProperty只是普通的静态方法。更改props将影响整个JVM。