又一个“Java通过引用或值传递”?

小伙伴们注意了!

小编在这里给大家送上关注福利:

搜索微信公众号“速学Java”关注即可领取小编精心准备的资料一份!

这是一个经典的面试问题,会让Java新手感到困惑。

在本文中,我将使用一个示例和一些图表来演示:Java是按值传递的。

1. 一些定义

传递值:在内存中复制传入的实际参数的值。

通过引用传递:传递实际参数的地址副本。

2. 传递基本类型变量

由于Java是按值传递的,因此不难理解下面的代码不会交换任何内容。

3.通过对象变量

Java通过引用操作对象,所有对象变量都是引用。

但是,Java不是通过引用传递方法参数,而是通过值传递方法参数。

问题是:为什么对象的成员值可以更改?

Code:

自从及和复制参考引用同一个对象,成员的值被改变了。

输出 :

最后,想学习Java的小伙伴们!

关注“速学java”公众号就可以拿到一份我为大家准备的Java学习资料!

对Java感兴趣的小伙伴也可以加 小编V❤: suxuejava

猜你喜欢

转载自blog.csdn.net/suxue_java/article/details/88355346
今日推荐