【发布时间】:2011-01-27 00:41:50
【问题描述】:
可能的重复:
Does Java pass by reference?
Is Java pass by reference?
嘿,
Java 是否真的通过value 传递所有内容,而我们不能通过reference 传递某些内容?
谢谢。
【问题讨论】:
-
我敢打赌,如果您在 Google 中输入了准确的短语,您会找到大量链接来回答您的问题。
-
Biziclop:Java 总是按值传递。即使是原始人。更改传递给方法的原始值在方法返回后不会保留效果。
-
@Marc W 嗯嗯,不传值的意思是把副本压入栈吗?
-
@Biziclip:不一定。这意味着在方法返回后对值的更改不会消失。 Java 将对象视为引用,因此对象的地址是按值传递的,但您仍然可以修改其字段。您只是不能将参数完全重新分配给新对象并在返回后保留它。
-
嗯,显然通过引用传递并不意味着传递引用。你生活和学习。 :)