费了我老大劲了
- public class SystemProperties {
- public static void main(String[] args) {
-
- Properties prop = System.getProperties();
- Properties prop1 = System.getProperties();
- System.out.println(prop==prop1);
- //结果是true,说明并没有新的集合产生,说明这个prop和prop1都只是地址引用,实际指向的是底层的一个集合。
- //也就是说,我们只改动集合的内容,不改动集合的地址,prop仍然会指向这个集合.这个就相当于
- Properties p1 = new Properties();//给p1分配一个地址,指向一个propertise集合
- Properties p2 = new Properties();
- p2=p1;
- p2.setProperty("Mykey","Myvalue");
- System.out.println(p1);//结果是 {Mykey=Myvalue},对p2操作也会影响到p1,说明p1和p2都只是地址引用。
-
- //System.setProperty(key, value) 也是在对底层的那个集合做修改,并没有影响到prop指向这个集合
- }
- }
复制代码 |