国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

JAVA參數(shù)傳遞方式實(shí)例淺析【按值傳遞與引用傳遞區(qū)別】

瀏覽:6日期:2022-09-01 10:35:16

本文實(shí)例講述了JAVA參數(shù)傳遞方式。分享給大家供大家參考,具體如下:

首先要明確的是JAVA中沒有引用傳遞, 全部是按值調(diào)用

令大家所費(fèi)解的 當(dāng)對(duì)象引用作為參數(shù)時(shí) 函數(shù)為什么能修改真實(shí)的對(duì)象呢?這不是引用傳遞的特征嗎?

尤其先學(xué)習(xí)C++再學(xué)習(xí)JAVA的同學(xué)(比如說(shuō)我自己)會(huì)這樣認(rèn)為,

用白話解釋就是:

引用傳遞指針時(shí), 連函數(shù)操作的指針都是原來(lái)的指針,比如C++傳入對(duì)象時(shí)直接用傳入的指針操作

而JAVA的引用傳進(jìn)函數(shù)時(shí) , 會(huì)復(fù)制一個(gè)引用與實(shí)參指向同一對(duì)象的引用, 操作的不是同一個(gè)引用,

如果還不明白區(qū)別再換種方式解釋一次:

JAVA只有按值調(diào)用, 參數(shù)是什么都會(huì)復(fù)制一份再操作, 就算是對(duì)象的引用也會(huì)復(fù)制一份新的引用,只不過指向的是同一個(gè)對(duì)象

這種傳參方式叫做按值傳遞, 傳遞的東西可以是引用(類似C++的指針)

如果是引用傳遞像C++傳入指針不會(huì)再?gòu)?fù)制一份了,直接拿來(lái)用

如果再不明白也沒關(guān)系,看看下面的例子和解釋分析

舉個(gè)例子:

JAVA參數(shù)傳遞方式實(shí)例淺析【按值傳遞與引用傳遞區(qū)別】

輸出結(jié)果:

JAVA參數(shù)傳遞方式實(shí)例淺析【按值傳遞與引用傳遞區(qū)別】

也就說(shuō)我們用一個(gè)函數(shù)修改了 傳入的一個(gè)int變量和一個(gè)對(duì)象內(nèi)容,

再輸出int變量和對(duì)象內(nèi)容時(shí)發(fā)現(xiàn) ,int的沒有改變,而 對(duì)象的內(nèi)容改變了

這說(shuō)明什么呢,說(shuō)明像 int ,double等基本數(shù)據(jù)類型在參數(shù)傳遞時(shí)并沒有傳進(jìn)變量本身,

而是創(chuàng)建了一個(gè)新的相同數(shù)值的變量, 函數(shù)修改這個(gè)新變量并沒有影響原來(lái)變量的數(shù)值,這也是按值傳遞的特點(diǎn)

JAVA參數(shù)傳遞方式實(shí)例淺析【按值傳遞與引用傳遞區(qū)別】

那為什么對(duì)象a的數(shù)據(jù)就改變了呢?

因?yàn)殡m然也是按值傳遞, 復(fù)制了一份新的引用但是指向的對(duì)象是同一個(gè),修改后會(huì)影響原對(duì)象

這種方式假如在函數(shù)內(nèi)修改 a=null; 只是把復(fù)制的引用與對(duì)象的聯(lián)系斷開,不影響函數(shù)外與實(shí)際對(duì)象

JAVA參數(shù)傳遞方式實(shí)例淺析【按值傳遞與引用傳遞區(qū)別】

這就是按值傳遞, 即使傳的是引用也不是引用傳遞,

因?yàn)?b>引用傳遞是不復(fù)制的,直接使用參數(shù),如下圖:

這時(shí)候函數(shù)把指針a=null就指針就置空了,函數(shù)外也無(wú)法再通過指針訪問對(duì)象了

JAVA參數(shù)傳遞方式實(shí)例淺析【按值傳遞與引用傳遞區(qū)別】

這樣可以理解了嗎,自我覺得足夠明白了, 我如此深厚的畫圖功底都供出來(lái)了,再不明白就是在為難我胖虎!

水平有限, 可能有錯(cuò)誤,敬請(qǐng)指出!

更多關(guān)于java相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java常用函數(shù)與方法技巧匯總》、《Java面向?qū)ο蟪绦蛟O(shè)計(jì)入門與進(jìn)階教程》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點(diǎn)技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》

希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 1024色淫免费视频 | 久久精品久久精品 | 欧美一级毛片aaa片 欧美一级毛片不卡免费观看 | 欧美日本一道高清二区三区 | 国产成人啪精品午夜在线观看 | 免费一级毛片无毒不卡 | 91精品国产91热久久久久福利 | 在线精品自拍 | 国产高清视频在线播放 | 亚洲人成综合网站在线 | 国产亚洲精品激情一区二区三区 | 亚洲久久在线观看 | 国内高清自拍 | 男人女人做刺激视频免费 | 91视频免费播放 | 91资源在线观看 | 老头做爰xxxx视频 | 久久国产精品一国产精品 | 毛片手机在线视频免费观看 | 高清国产露脸捆绑01经典 | 亚洲欧美精品成人久久91 | 色综合久久88色综合天天 | 俄罗斯18videosex性欧美成人 | 国产成人啪一区二区 | 国产欧美日韩在线人成aaaa | dy888午夜国产午夜精品 | 鲁大师成人精品视频 | 欧美一级手机免费观看片 | 欧美国产成人精品一区二区三区 | 性国产精品 | 性做久久久久免费观看 | 日韩欧美不卡在线 | 久久精品国产免费高清 | 一级片网站在线观看 | 99久久精品免费看国产免费软件 | 成人免费视频在 | 久久精品国产亚洲网站 | 91视频最新网站 | 精品一区二区三区五区六区 | 国产精选在线视频 | 国产日韩精品欧美一区 |