gpt4 book ai didi

java - Java中的实例变量是通过引用传递的吗?

转载 作者:行者123 更新时间:2023-12-01 06:47:46 25 4
gpt4 key购买 nike

现在我知道Java是纯粹按值传递的,但是实例变量是按引用传递的吗?

这就是我的意思(我知道这段代码很糟糕,但它是伪代码:

//Instance variables
private Object[] array = new Object[10];
array[4] = new Object[5];

//Private method
private Object ar(int x)
{
return array[x];
}

//Inside Main or some other method
ar(4)[0] = "Foo";

现在,由于 array 是实例变量,因此 array[4] 中数组的第一个槽是否会更改为“Foo”?

澄清:

我知道一切都是按值传递的。但我们正在谈论调用实例变量中包含的内容,请重点关注这一点。谢谢。

最佳答案

是的,array[4] 中的第一个槽将更改为 "Foo"

在 Java 中,一切都是按值传递的。传递对象时,对象的引用是按值传递的。对于您的示例,array[4] 中包含的对象是从 ar 方法返回的。

关于java - Java中的实例变量是通过引用传递的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5266309/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com