Java的值傳遞和引用值傳遞的區別

2021-07-23 15:51:40 字數 312 閱讀 7012

值傳遞針對的物件主要包括:基本資料型別以及其對應的封裝類,還有引用型別中特殊的string型別;

值傳遞的時候,將實參的副本傳遞給形參,所以無論呼叫的這個方法裡面如何對形參進行改變,都不會影響實參的值,因為副本作為區域性變數,在其行為結束時候,就會被**(失效),故我們從main()方法中得到該變數還是原來的實參值;

引用傳遞的物件主要包括:array型別以及除string型別的引用型別

引用值傳遞的時候,傳遞的是實參的引用位址,呼叫的方法裡面的形參可以改變引用位址的值,返回的時候,引用位址的值已經發生改變,故我們從main()方法中得到該變數的值已經被形參影響。

Java的值傳遞和引用傳遞

值傳遞 值傳遞是基本資料型別的資料傳遞,是棧中的資料 基本資料型別的資料作為方法的引數進行傳遞,那麼在方法中會另外開闢乙個新的記憶體空間,跟原來的記憶體空間不是乙個記憶體空間,如果在方法中對引數的值進行更改,不糊影響原來的記憶體空間的值 如果非要獲取方法中修改後的值,則需要把修改後的值返回出來 引用...

java 值傳遞和引用傳遞

值傳遞 方法呼叫時,實際引數把它的值傳遞給對應的形式引數,方法執行中形式引數值的改變不影響實際參 數的值。引用傳遞 也稱為傳位址。方法呼叫時,實際引數的引用 位址,而不是引數的值 被傳遞給方法中相對應的形式引數,在方法執行中,對形式引數的操作實際上就是對實際引數的操作,方法執行中形式引數值的改變將會...

Java 值傳遞和引用傳遞

一 值傳遞 方法呼叫時,實際引數把它的值傳遞給對應的形式引數,函式接收的是原始值的乙個copy,此時記憶體中存在兩個相等的基本型別,即實際引數和形式引數 後面方法中的操作都是對形參這個值的修改,不影響實際引數的值 看下面這個值傳遞的例子。public class transfertest publi...