两者的区别在于Java值传输需要为传输的值分配额外的存储空间,而引用传输则不需要。它只传输所传输值的地址,变量可以直接将值读取到地址指示的存储空间。
从这个意义上讲,引用传递比传递节省更多的存储空间。
在这个问题上,不同的人有不同的理解。对于Java初学者来说,他们可能认为Java中的参数传递分为值传递和引用传递。至于为什么,教科书上说了。对于程序员的某些工作年限,他们可能会认为,如果传递的参数类型是普通类型,则传递的是值;如果参数是对象,则传递的是引用。另一些人认为,只有Java中的值传递才是主要问题的主题。
对于Java编程语言,前两种理解是错误的。Java中只使用值传递。对我来说,一开始,我也理解了价值传递和参照传递的理论,但随着自己代码的积累,我逐渐发现事实并非如此。那么为什么只有价值传递呢?
首先,让我们了解什么是值传递,什么是引用传递?
值传输意味着调用函数时,实际参数值被复制并传递给被调用函数。修改被调用函数中的参数值不会影响原始参数值。
引用传递意味着调用函数时,实际参数的地址直接传递给被调用函数。修改被调用函数中的参数值将影响原始参数值。
如果传递的参数类型是普通基本类型,则必须复制实际参数值并将其传递给形式参数。但是,当参数类型是对象时,它也是复制的参数值,并将其传递给形式参数。只复制对象的引用地址,即内存中分配的存储地址,而不是直接传递的引用地址。
此时,有些人可能会问为什么一个对象会被传递给另一个方法。在此方法中修改对象的属性值时,原始调用方法中对象的属性值将更改。这不就是参考传递吗?
事实上,这是一个非常令人困惑的问题。如果你仔细看看上面的说法,事实并非如此。将一个对象传递给另一个方法会传递什么?传递对象引用的地址。对象引用的地址是否已在其他方法中修改?原始对象引用是否受影响?不
!因此,Java中没有引用传递,只有值传递。不要犯任何错误!
你觉得青岛有哪些比较知名的互联网企业?青岛互联网产业发展不起来的根本原因是工资太低(只说互联网企业,不比其他行业)。山东并非没有人才。山东学生在任何一所大学都有一定的比例,但只要他们走出去,甚至在山东,不管是本科生、硕士生还是博士生,有多少
我儿子被成都东软学院录取了,学校怎么样?又称青城山皇家老年学院。成都东软学院占地面积?成都东软学院成立于2003年,前身为成都东软信息技术职业学院,2011年5月升格为教育部批准的全日制本科院校,成为四川省历史上第一所独立的民办本科院校。截
学了java能做什么实际的东西?学java可以做很多实用的事情,主要看你的兴趣所在。如果你喜欢手机开发,你可以做一个手机操作系统,因为Android是用Java开发的。如果你想涉足金融行业,你可以为银行或投资机构建立他们的交易系统,因为高盛
梦奇的三技能怎么用?梦琪的三大招式都是远移招式。可以用来追敌,也可以用来逃命。王者荣耀梦奇这位英雄适合出什么类型的装备?孟奇已经出局很长时间了,但是很多球员都不太了解。其实孟奇的英雄是坦克,但孟奇的戳伤相当不错,尤其是他的飞镖技术,绝对是无
网络推广哪个平台好一点?再次感谢悟空的邀请。为了解决这个问题,我想表达一下我以前储存红薯的过程。如果你在家里不长得太多,你可以选择地势较高的地方。坑后最好有个遮蔽处,挡住西北风。挖一个南北向的长方形土坑,土坑的大小和深度取决于你准备储存的新
供给侧结构性改革的目的是调整经济结构,优化要素配置,提高经济增长的质量和数量。需求侧改革主要包括投资、消费和出口,供给侧改革包括劳动力、土地、资本、制度创新。供给侧结构性改革,从提高供给质量入手,通过改革促进结构调整,纠正要素配置扭曲,扩大
网站如何才能做好搜索引擎优化排名?虽然你的网站已经建好了,但我还是觉得你需要查几个小问题,野路子生来就没有正统的SEO学习,仅供参考。1. 该网站是否应用了网站的大多数模板,或已重新设计?如果是自己重新设计,那么网站收录的速度会比那些模板快
怎样开网站?如果你想建立一个网站,你必须有一个虚拟主机(服务器)域名网站程序(网页源代码)。首先,你需要找到你做什么样的网站。让我们以个人博客网站为例。首先,我们需要注册一个域名,这是我们通常打开网站的地址,例如:www.pla8.com.
dnf念帝如何满buff换装?(起源版本)?谢谢您的邀请,年弟师兄会为您解答的;原版本发布后,buff变更系统已经更新。对我们来说,念帝已经大大提高了,避免了变身的机会;念帝变身的核心buff是光之刃,简称光兵;精通10级,掌握20级上限;
百度的弹弹堂的朱雀实怎样获得?获得方法1:神灵恩宠融合(50级开启)如果你想融合神灵恩宠朱雀,你需要收集相应的材料,包括满级土灵*1、满级炮龙*1、满级飞龙*1、满级冰晶凤凰*1、满级风灵*1和200颗钻石。第二种方法:通过使用钻石,你可以