java—为什么通过方法时变量值不改变[重复]
发布时间:2022-05-27 17:43:36 336
相关标签: # php
我是编程新手 Ryan。我今天正在阅读我教科书的 OOP 部分,我发现了一个我根本不会理解的部分。有2个代码,我将它们复制在这里。第一个是:
public class Change {
public static void main(String[] args) {
int x = 17;
dontChange(x);
System.out.println(x);
}
static void dontChange(int z) {
z = 42;
}
}
执行代码时。输出仍然是17,这不是预期的42(根据我对参数和方法的理解)
教科书也提供了另一个例子,这导致了一个变化。
public class Change {
void change(Student s) {//student is a type
s.name = "Fred";
public static void main(String[] args) {
stu.name = "Jane";
change(stu);
System.out.println(stu.name);
}
}
这段代码会导致输出名为“Fred”,我想知道它们之间的区别在哪里,当它们看起来相似,工作方式完全不同时,这些代码背后的原因是什么。
谢谢你浏览了整个帖子,祝你有一个美好的一天!
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报