參數傳遞

  對於參數傳遞來講,傳送的都是變量的值。對於基本類型來講,傳送的是變量的數值(常規的值傳遞);對於引用類型來講,傳送的是引用類型變量中所保存的地址(指向所引用的對象)。spa

  

 1 public class test {
 2     public int value = 0;
 3     public static void main(String [] args){
 4         test a1 = new test();
 5         test a2 = new test();
 6         change (a1,a2);
 7         System.out.println("a1.value="+ a1.value);
 8         System.out.println("a2.value="+a2.value);
 9         
10     }
11     public static void change(test test1,test test2){
12         test1.value = 2;
13         test2 = new test();
14         test2.value = 3;
15     }
16 }

 結果a1.value = 2;code

       a2.value = 0;對象

main()調用chane方法後,a1將所引用的對象的地址傳送給test1,此時,test1指向與a1相同的對象;a2將所引用的對象的地址傳送給test2,此時,test2指向與a2相同的對象blog

 

當test2引用新的test實例時,test2指向新的對象,與a2再也不指向同一個對象,對test2的操做也再也不影響a2.class

相關文章
相關標籤/搜索