gpt4 book ai didi

java - 在 Java 中更改传递的对象的错误编程习惯

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:17:26 25 4
gpt4 key购买 nike

<分区>

我刚刚在读这个堆栈问题:

Is Java "pass-by-reference" or "pass-by-value"?

而且我想知道使用方法通过对象的地址更改对象是否被认为是不好的编程习惯。我质疑这一点,因为这无疑是 Java 的一个令人困惑的属性。

所以你从上面的问题中得到了这段代码:

Person person;
person = new Person("Tom");
changeName(person);

//I didn't use Person person below as an argument to be nice
static void changeName(Person anotherReferenceToTheSamePersonObject) {
anotherReferenceToTheSamePersonObject.setName("Jerry");
}

由于其令人困惑的性质,这似乎确实是编程中应避免的事情。这通常是一种可接受的 Java 编程方法吗?

(当然,经典的替代方法是使用新名称作为参数调用 person.changeName() 函数。)

如果这不适合 Stack,我一定会删除它。我只是对如何在现实世界中使用这种能力感兴趣。它在专业环境中得到宽恕吗?谢谢!

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