Java參數傳遞機制
Java究竟是應該按照什麼來傳遞參數?值?引用?還是兩者皆有?
其實,弄清楚這個問題得從概念入手.什麼是按值傳遞,什麼是按照參數傳遞.
定義一個變數TestObject obj = new TestObject(); 然後把 obj 作為參數傳遞給一個方法.如果在這個方法中,只能改變obj指向的這個對象的內容,那就是「值傳遞」,傳過去的值就是指向這個對象的指針.如果在這個方法中通過操作,是的返回后的obj指向另外一個對象(通過equal判斷返回來的對象是否與原對象在內存中指向同一內存地址),那就是「引用傳遞」,傳過去的是對這個指針變數的「引用」.
Java參數傳遞機制分析代碼
public class PersonT { public void change(Person p) { public void changeInt(int i) { |
輸出結果為:
姓名:john年齡:18
姓名:mary年齡:20
傳回來的值指向是否一致:true
i值為:10
i值為:10
姓名:mary
年齡:20
以上就是對Java參數傳遞機制的一些分析.
[火星人 ] Java參數傳遞機制分析:值與引用已經有463次圍觀