什麼是值傳遞和引用傳遞

一、什麼是值傳遞和引用傳遞?

值傳遞,是對於基本數據類型的變量而言的。傳遞的是該變量的一個副本,改變副本並不影響原變量

引用傳遞,是對於對象型變量而言的。傳遞的是該變量地址的一個副本,並不是該對象本身


鏈接:https://www.nowcoder.com/questionTerminal/b296e9e1c40542ec8677c1e452b6b576
來源:牛客網


public void add(int a) { int b = a; } 這個可以看作是值傳遞,a是基本數據類型,他把他的值傳給了bpublic void add(Object obj) { Object objTest = obj; }這個可以看作是址傳遞,obj是引用數據類型,它是把棧中指向堆中的對象的地址值賦值給了objTest.這時候就同時有兩個引用指向了堆中的某個Object對象 其實這樣看來,java應該只有值傳遞的。如果是基本數據類型,傳遞的就是實際的值. 如果是引用數據類型,傳遞的就是該引用的地址值.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章