摘要:經(jīng)過很多次的調(diào)試后,才發(fā)現(xiàn)最后的原因竟然是因為參數(shù)傳遞的時候并沒有將更改后的值傳遞給最終變量。這時才意識到中只存在值傳遞,不存在引用傳遞。這也就意味著傳遞的參數(shù)只是原來對象的拷貝,對于參數(shù)的改變并不會影響原來對象的值。
??最近遇到了一個bug,在debug條件下可以看出更改后的值,但是在最終顯示的結果中確實沒有更改的值。經(jīng)過很多次的調(diào)試后,才發(fā)現(xiàn)最后的原因竟然是因為參數(shù)傳遞的時候并沒有將更改后的值傳遞給最終變量。
??這時才意識到java中只存在值傳遞,不存在引用傳遞。這也就意味著傳遞的參數(shù)只是原來對象的拷貝,對于參數(shù)的改變并不會影響原來對象的值。所以想在一個方法中改變另一個類的對象,不能僅僅通過傳入對象作為參數(shù),還需要將更改后的值進行回傳或者在一開始就導入整個對象,這樣最終的結果才是正確的。
文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://m.hztianpu.com/yun/66791.html
閱讀 923·2021-11-25 09:44
閱讀 1171·2021-11-19 09:40
閱讀 7389·2021-09-07 10:23
閱讀 2051·2019-08-28 17:51
閱讀 1193·2019-08-26 10:59
閱讀 1993·2019-08-26 10:25
閱讀 3258·2019-08-23 18:22
閱讀 935·2019-08-23 16:58