Java方法调用的值传递方式

方法调用的值传递方式指的是在方法调用时从方法的调用参数代入到方法定义的参数的方式。(实际参数和形式参数的概念)
在Java中,方法调用的参数传递方式基本上采用值传递方式。

基本数据类型

在进行方法调用时,首先将调用参数表达式的存储单元的内容赋值给定义参数变量的存储单元,即将调用参数表达式的值赋值给定义参数变量,从而使得定义参数变量的值与调用参数表达式的值相同,这个过程称为参数传递。因为调用参数表达式和定义参数变量分别占据独立的存储单元,所以如果在执行方法体内部的语句时修改定义参数变量的值并不会改变调用参数表达式的值,即这时可能出现定义参数变量的值与调用参数变量表达式的值不相等的现象。

这里要注意的是,Java中数据类型处理基本数据类型就是引用数据类型。
基本数据类型包含布尔(boolean)、字符(char)、字节(byte)、
短整数(short)、整数(int)、长整数(long)、单精度浮点数(float)、双精度浮点数(double)。
在基本数据类型的表达式或变量的存储单元中存放的内容就是这些基本数据类型的具体数值。如果调用参数表达式和定义参数变量的类型为基本数据类型,则在执行方法体内部的语句时修改定义参数变量的数值并不会修改调用参数表达式的数值。

例子
这里写图片描述


引用数据类型

在进行参数传递时,将调用参数表达式的引用值赋值给定义参数变量,从而使得定义参数变量的值和调用参数表达式的值相同,即调用参数表达式和定义参数变量均指向同一个对象。这样在执行方法体内部的语句时可以通过定义参数变量的值修改调用参数表达式和定义参数变量共同所指向的对象的内容。这种修改在方法调用之后仍然有效。

例子
这里写图片描述
两者指向同一个实例对象

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值