8.3、java中方法的参数传递机制问题(基本数据类型传递与引用类型传递区别)

本文详细探讨了Java中方法参数传递的机制,指出Java只支持按值传递。对于基本数据类型,参数的修改不会影响原始值。而对于引用类型,尽管看起来像是引用传递,但实际上是传递对象引用的副本,因此方法内对对象属性的修改会影响原始对象。String类型的参数处理则有特殊性,虽为引用类型,但其不可变性使得参数修改不会影响原始字符串。
摘要由CSDN通过智能技术生成

参考资料:java核心卷1

这篇文章主要介绍了Java中方法的参数传递机制

  • java方法参数传递机制原理
  • 实现方法及操作注意事项

参数传递机制

对于程序设计语言来说,一般方法(函数)的参数传递有两种:

  • 按值传递(按值调用)           (call by value)
  • 按引用传递(按引用调用)   (call by reference)

按值传递:当将一个参数传递给一个方法时,方法接收的是原始值的一个副本。因此,如果方法修改了该参数,仅改变副本,而原始值保持不变。(方法接收的是调用着提供的值)

按引用传递:当将一个参数传递给一个方法时,方法接收的是原始值的内存地址,而不是值的副本。因此,如果方法修改了该参数,调用代码中的原始值也随之改变。(表示方法接收的是调用者提供的变量地址

Java中的参数传递

  • Java中的参数传递机制只有一种,就是按值传递。在Java中并没有C++引用传递这种参数传递机制,它所有的参数传递都遵循值传递的机制。
  • Java中对于对象(数组,类,接口)的传递似乎有点像引用传递,可以改变对象中某个属性的值。但是不要被这个假象所蒙蔽,实际上这个传入方法的值是对象引用的拷贝,即传递的是引用的地址值,所以还是按值传递。

可以理解当我们要调用一个方法时,我们会把指定的数值,传递给方法中的参数,这样方法中的参数就拥有了这个指定的值,可以使用该值,在方法中运算了。这种传递方式,我们称为参数传递。

  • 在这里,定义方法时,参数列表中的变量,我们称为形式参数。
  • 调用方法时,传入给方法的数值,我们称为实际参数

1、基本数据类型的参数传递

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值