电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

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

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

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

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

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

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

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

用白話(huà)解釋就是:

引用傳遞指針時(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ù)制一份新的引用,只不過(guò)指向的是同一個(gè)對(duì)象

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

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

如果再不明白也沒(mé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的沒(méi)有改變,而 對(duì)象的內(nèi)容改變了

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

而是創(chuàng)建了一個(gè)新的相同數(shù)值的變量, 函數(shù)修改這個(gè)新變量并沒(méi)有影響原來(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)系斷開(kāi),不影響函數(shù)外與實(shí)際對(duì)象

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

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

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

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

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

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

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

更多關(guān)于java相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Java常用函數(shù)與方法技巧匯總》、《Java面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)與進(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)文章:
主站蜘蛛池模板: 手术室净化装修-手术室净化工程公司-华锐手术室净化厂家 | 闪蒸干燥机-喷雾干燥机-带式干燥机-桨叶干燥机-[常州佳一干燥设备] | 水厂自动化-水厂控制系统-泵站自动化|控制系统-闸门自动化控制-济南华通中控科技有限公司 | 大功率金属激光焊接机价格_不锈钢汽车配件|光纤自动激光焊接机设备-东莞市正信激光科技有限公司 定制奶茶纸杯_定制豆浆杯_广东纸杯厂_[绿保佳]一家专业生产纸杯碗的厂家 | 深圳律师咨询_深圳律师事务所_华荣【免费在线法律咨询】网 | 蔬菜清洗机_环速洗菜机_异物去除清洗机_蔬菜清洗机_商用洗菜机 - 环速科技有限公司 | 喷砂机厂家_自动除锈抛丸机价格-成都泰盛吉自动化喷砂设备 | 天津拓展_天津团建_天津趣味运动会_天津活动策划公司-天津华天拓展培训中心 | 菲希尔X射线测厚仪-菲希尔库伦法测厚仪-无锡骏展仪器有限责任公司 | 桑茶-七彩贝壳桑叶茶 长寿茶 | 铝合金线槽_铝型材加工_空调挡水板厂家-江阴炜福金属制品有限公司 | 汽车润滑油厂家-机油/润滑油代理-高性能机油-领驰慧润滑科技(河北)有限公司 | 儿童语言障碍训练-武汉优佳加感统文化发展有限公司 | 立刷【微电签pos机】-嘉联支付立刷运营中心 | 阳光模拟试验箱_高低温试验箱_高低温冲击试验箱_快速温变试验箱|东莞市赛思检测设备有限公司 | 洗石机-移动滚筒式,振动,螺旋,洗矿机-青州冠诚重工机械有限公司 | PCB设计,PCB抄板,电路板打样,PCBA加工-深圳市宏力捷电子有限公司 | 板材品牌-中国胶合板行业十大品牌-环保板材-上海声达板材 | 菏泽商标注册_菏泽版权登记_商标申请代理_菏泽商标注册去哪里 | GEDORE扭力螺丝刀-GORDON防静电刷-CHEMTRONICS吸锡线-上海卓君电子有限公司 | Win10系统下载_32位/64位系统/专业版/纯净版下载 | 标准件-非标紧固件-不锈钢螺栓-非标不锈钢螺丝-非标螺母厂家-三角牙锁紧自攻-南京宝宇标准件有限公司 | 盘煤仪,盘料仪,盘点仪,堆料测量仪,便携式激光盘煤仪-中科航宇(北京)自动化工程技术有限公司 | 视频教程导航网_视频教程之家_视频教程大全_最新视频教程分享发布平台 | 杭州翻译公司_驾照翻译_专业人工翻译-杭州以琳翻译有限公司官网 组织研磨机-高通量组织研磨仪-实验室多样品组织研磨机-东方天净 | 印刷人才网 印刷、包装、造纸,中国80%的印刷企业人才招聘选印刷人才网! | 扬子叉车厂家_升降平台_电动搬运车|堆高车-扬子仓储叉车官网 | 专注氟塑料泵_衬氟泵_磁力泵_卧龙泵阀_化工泵专业品牌 - 梭川泵阀 | 烟台金蝶财务软件,烟台网站建设,烟台网络推广 | 高防护蠕动泵-多通道灌装系统-高防护蠕动泵-www.bjhuiyufluid.com慧宇伟业(北京)流体设备有限公司 | 船用锚链|专业锚链生产厂家|安徽亚太锚链制造有限公司 | 干粉砂浆设备_干混砂浆生产线_腻子粉加工设备_石膏抹灰砂浆生产成套设备厂家_干粉混合设备_砂子烘干机--郑州铭将机械设备有限公司 | 桌上式超净工作台-水平送风超净工作台-上海康路仪器设备有限公司 | 福建自考_福建自学考试网 | 磨煤机配件-高铬辊套-高铬衬板-立磨辊套-盐山县宏润电力设备有限公司 | 炉门刀边腹板,焦化设备配件,焦化焦炉设备_沧州瑞创机械制造有限公司 | 沈阳缠绕膜价格_沈阳拉伸膜厂家_沈阳缠绕膜厂家直销 | 混合生育酚_醋酸生育酚粉_琥珀酸生育酚-山东新元素生物科技 | 德国GMN轴承,GMN角接触球轴承,GMN单向轴承,GMN油封,GMN非接触式密封 | 电动高压冲洗车_价格-江苏速利达机车有限公司 | 渣土车电机,太阳能跟踪器电机,蜗轮蜗杆减速电机厂家-淄博传强电机 |