1. 程式人生 > 其它 >面向物件——值傳遞和引用傳遞

面向物件——值傳遞和引用傳遞

在Java中引數的傳遞主要有兩種:值傳遞和引數傳遞;

下面是對兩種傳遞方式在記憶體上的分析:

一:值傳遞

值傳遞就是真的值取傳遞給方法中,然後滾程式碼

程式碼示例如下:

package arrayDemo;
public class Demo1 {
        public static void main(String[] args) {
                int b =20;
                change(b);// 實參  實際上的引數
                System.out.println(b);
        }
        public static void change(int a){//形參  形式上的引數
                a=100;
        }
}
輸出20

二:引用傳遞

引用傳遞就是引用呼叫方法後,利用方法中的值改變改變原來的值

程式碼示例如下:

package arrayDemo;
public class Demo1 {
        public static void main(String[] args) {
                int [] a={1,2,3};
                System.out.println(a[0]);
                change(a);
                System.out.println(a[0]);
        }
        public static void change(int[] a ){
                a[0]=100;
        }
}