Java 中賦值類時候修改後原類中的值改變

bluefishyong發表於2007-05-29

今天一個很傻的問題看了半天,結果測試一下,原來Java基礎學的不是很好。把例子帖出來,已被後看

我們在建立 Person類 Person p =new Person();

Person p1=p;

在修改P1後,p的值也隨之改變。原因是p1指向p的建立的類儲存空間。我們修改p1,即是修改p建立類儲存空間的值,也是說值被改變。

下面是我寫的一個測試例子: StrTest.java

public class StrTest{
public static void main(String [] args){
Person p=new Person();
p.a=2;
System.out.println(p.a);
Person p1=p;
p1.a=3;
System.out.println("p1:"+p1.a);
System.out.println("p:"+p.a);
}
}
class Person{
public int a=1;
}

執行結果:

2
p1:3
p:3
Press any key to continue...

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8046846/viewspace-916733/,如需轉載,請註明出處,否則將追究法律責任。

相關文章