在这个问题上,不同的人有不同的理解。对于Java初学者来说,他们可能认为Java中的参数传递分为值传递和引用传递。至于为什么,教科书上说了。对于程序员的某些工作年限,他们可能会认为,如果传递的参数类型是普通类型,则传递的是值;如果参数是对象,则传递的是引用。另一些人认为,只有Java中的值传递才是主要问题的主题。
对于Java编程语言,前两种理解是错误的。Java中只使用值传递。对我来说,一开始,我也理解了价值传递和参照传递的理论,但随着自己代码的积累,我逐渐发现事实并非如此。那么为什么只有价值传递呢?
首先,让我们了解什么是值传递,什么是引用传递?
值传输意味着调用函数时,实际参数值被复制并传递给被调用函数。修改被调用函数中的参数值不会影响原始参数值。
引用传递意味着调用函数时,实际参数的地址直接传递给被调用函数。修改被调用函数中的参数值将影响原始参数值。
如果传递的参数类型是普通基本类型,则必须复制实际参数值并将其传递给形式参数。但是,当参数类型是对象时,它也是复制的参数值,并将其传递给形式参数。只复制对象的引用地址,即内存中分配的存储地址,而不是直接传递的引用地址。
此时,有些人可能会问为什么一个对象会被传递给另一个方法。在此方法中修改对象的属性值时,原始调用方法中对象的属性值将更改。这不就是参考传递吗?
事实上,这是一个非常令人困惑的问题。如果你仔细看看上面的说法,事实并非如此。将一个对象传递给另一个方法会传递什么?传递对象引用的地址。对象引用的地址是否已在其他方法中修改?原始对象引用是否受影响?不
!因此,Java中没有引用传递,只有值传递。不要犯任何错误!
自学设计有哪些好用的网站?我要自学网,软件自学网,网易云教室,腾讯教室,中国大学MOOC这些都不错有没有适合零基础学习室内设计、平面设计、影视动画的网站推荐?如何自学室内设计?学室内设计去哪学?首先,你要学会各种软件,基本的CAD一定能,如
用手机微信怎么发红包?只有智能手机设备可以通过安装微信软件通过微信发送红包,但不能通过代码发送。微信软件无法识别用户代码,可以通过安装微信软件向其他微信好友发送红包。
有没有一些好的免费AE模板网站?我很幸运地告诉你,上面提到的一些视频效果是我前段时间下载的。我经常编辑视频,喜欢AE软件,所以我经常导出和收集AE模板,但其中许多模板需要会员免费下载。只有一个免费的AE模板网站我经常使用。里面的模板都是高质
怎么在微信公众号平台开通留言功能?3月12日,腾讯根据主管部门的要求,临时调整了微信短信功能的开通规则。新注册的账户没有短信功能,最近三个月内注册但未使用短信功能的账户将被撤销。微信宣布全面开放原创和留言功能,将会带来怎样的影响?当我看到赞
网站免费建站的方法有什么?如果没有技术,没有基础,想做免费的网站,你可以选择智能站平台,可以实现零码、低成本、多功能的站,至于操作步骤,也是一个非常简单的傻瓜操作,我只使用文慧智能站系统之前,非常方便,给你一个推荐!1. 访问网站平台,注册
心电图qt间期正常值是多少?QT间期的正常值应在0.37到0.44秒之间。如果有缩短或加长提示,则会出现异常。如果QT间期缩短,可能是由高钙血症或洋地黄引起的。QT间期延长可能与严重心律失常、猝死等疾病密切相关。因此,如果QT间期异常,应结
培训Java效率如何?要多久才能有能力找工作?对于java培训学习者来说,最终的目标可能是一个方向,那就是学好java技术,找到一份好工作,完成就业。大家都比较关注和关心java培训和学习的知识,培训的时间长短,学习java培训后是否适合找
WPF中,怎么让TextBox里面输入的文本居中?所以,我讨厌那些不知道如何假装理解的人。VB和ASP使用垂直对齐方式,textalignment=“center”位于水平中间,C语言对WinForm开放,contentalignment的
自己刚开始学web,不知道如何下手,可以先抄别人的代码吗?完全没关系。向别人学习也是一种学习方式。你可以通过敲打来理解代码,但你不能一直盲目地跟随别人的敲打。你得有个计划。以下建议希望能对您有所帮助:1、根据您正在寻找的代码,您仍然可以实现
为什么很多Python开发者写GUI不用Tkinter,而要选择PyQt和wxPython或其他?我认为主要有两个原因。首先,国外关于Tkinter的专著基本没有(目测只有一本“Python和Tkinter编程”),所以国内关于Tkinte