在这个问题上,不同的人有不同的理解。对于Java初学者来说,他们可能认为Java中的参数传递分为值传递和引用传递。至于为什么,教科书上说了。对于程序员的某些工作年限,他们可能会认为,如果传递的参数类型是普通类型,则传递的是值;如果参数是对象,则传递的是引用。另一些人认为,只有Java中的值传递才是主要问题的主题。
对于Java编程语言,前两种理解是错误的。Java中只使用值传递。对我来说,一开始,我也理解了价值传递和参照传递的理论,但随着自己代码的积累,我逐渐发现事实并非如此。那么为什么只有价值传递呢?
首先,让我们了解什么是值传递,什么是引用传递?
值传输意味着调用函数时,实际参数值被复制并传递给被调用函数。修改被调用函数中的参数值不会影响原始参数值。
引用传递意味着调用函数时,实际参数的地址直接传递给被调用函数。修改被调用函数中的参数值将影响原始参数值。
如果传递的参数类型是普通基本类型,则必须复制实际参数值并将其传递给形式参数。但是,当参数类型是对象时,它也是复制的参数值,并将其传递给形式参数。只复制对象的引用地址,即内存中分配的存储地址,而不是直接传递的引用地址。
此时,有些人可能会问为什么一个对象会被传递给另一个方法。在此方法中修改对象的属性值时,原始调用方法中对象的属性值将更改。这不就是参考传递吗?
事实上,这是一个非常令人困惑的问题。如果你仔细看看上面的说法,事实并非如此。将一个对象传递给另一个方法会传递什么?传递对象引用的地址。对象引用的地址是否已在其他方法中修改?原始对象引用是否受影响?不
!因此,Java中没有引用传递,只有值传递。不要犯任何错误!
Win7系统不小心清空了回收站如何恢复文件?打开360安全卫士,单击右下角的“更多”→单击“文件恢复”→在弹出的页面左上角选择要恢复文件的驱动程序,单击“扫描”→选择要恢复的文件→选择恢复文件的存储路径1。打开计算机搜索程序并输入“rege
怎样建一个网站?普通网站的建设费用和维护费用是多少?域名基本免费,只需要一个服务器。以阿里巴巴云和腾讯云为例。最便宜的网站服务器价格也不贵,一年近500元,作为公司发布信息当然可以。同时支持1000人,基本够用。网站建设代码基本模板,有相关
域名重定向怎么解决?在磁盘C上找到一个名为host的文件,并与高级管理员一起编辑它。通常会有一个链接到淘宝。删除整行,不要移动其他行。域名重定向意味着当你访问一个域名时,你可以跳转到你想要的页面,。例如,域名是www.qwertyuiop.
java正则如何表示80-160的范围?导入java.util.Scanner文件public class test{public static void main(String[]args){Scanner sc=new Scanner(
我想在网上卖掉我的狗狗,我应该怎样做?作为一个狗主人,首先,不建议你卖掉你的狗。如果你举起它,你无法想象它会依附于第一个主人。如果你改变了环境和主人,很多狗就无法适应。有的狗会有心理阴影,甚至抑郁,这很可怜!如果真的不具备养狗的条件,可以先
域名注册、域名空间和域名备案之间的关系是怎么样的?主页应该了解域名注册、域名空间和域名备案的含义。域名注册是注册新域名;域名空间是域名和虚拟主机;域名记录是记录域名。从这里我们可以提取三个关键词:域名、空间和记录。这三个关键词都离不开网站。
动漫设计都需要学哪些软件?1. Clip studio paint:CSP是Clip studio paint的缩写。这是一个绘图软件,似乎作为接班人comicstudio(优曼)和illustratstudio(优华)。它具有Sai的所有
国内外手工制作网站有哪些?我真的不知道国外的,因为我不知道国内的Tiktok、火山、西瓜等等,现在都是手工制作的,更适合学习和欣赏。互联网越来越发达,你可以通过搜索找到你想要的东西。我是核雕塑家。我在发我自己的作品。感谢您的支持和关注。一两
模块化培训的定义?模块化培训是指为每个特定的职业或岗位建立一个工作描述表,确定该职业或岗位应具备的所有功能,然后将这些功能划分为不同的任务,每个任务作为一个模块。模块化的目的?模块化的目的不仅是为了减小整机的体积,而且消除了传统的布线方式,
物流红章是什么意思?快递公司通常不盖这个印章。在所有情况下,通常都是退款的问题。我们见过很多这样的事。开箱拿了一些东西后,我们说东西不够,只退一部分,然后全部退。最后,遇到这种垃圾的人只能遭受无聊的损失,别无选择。如果你能要求快递公司在送货